S. Srivathsani


SQLServerCentral Article

Dynamic Management Views and Functions in SQL Server 2005

DBAs have always been warned against using system tables in their code, but often there has been no other way to get information about the server. In SQL Server 2004, Dynamic Management Views have been provided that give you insight into almost every aspect of SQL Server. S. Srivathsani brings us a look at some of the DMVs and functions you can use.

4.54 (13)

You rated this post out of 5. Change rating

2008-03-18 (first published: )

17,559 reads

SQLServerCentral Article

Understanding DDL Triggers in SQL Server 2005

SQL Server 2005 includes a number of new security enhancements to aid the DBA in managing their SQL Server. DDL triggers allow you to trap all kinds of DDL events that occur on your server. S. Srivathsani brings us a look at these new events.

4.45 (11)

You rated this post out of 5. Change rating

2008-03-17 (first published: )

15,759 reads

Blogs

Dealing with Changing Data Formats: Schema Drift in Azure Data Factory

By

(2025-Feb-12) I will jump straight to the problem statement without a "boring" introduction, which, in...

Adding Manual Relationships Between Tables in the TDM Subsetter

By

I wrote about getting the Redgate Test Data Manager set up in 10 minutes...

The hell of Git line endings and the (not so) simple fix

By

I wrote a stream-of-consciousness post a few months ago about what I do in...

Read the latest Blogs

Forums

Do You Folks Mind Beginners Here?

By Ahr Aitch

I'm a retired IT guy in his 80s fighting boredom by trying to learn...

Do You Folks Mind Beginners Here?

By Ahr Aitch

I just joined and posted a brief profile.  This is my first post.  Please...

ROWID in MS SQL

By tizma

WHERE a.ROWID IN (SELECT rid FROM ( SELECT ROWID rid, row_number() OVER (PARTITION BY...

Visit the forum

Question of the Day

The Rank Window

I have this table and data:

CREATE TABLE [dbo].[SalesTracking]
(
[SalesDate] [datetime] NULL,
[SalesPersonID] [int] NULL,
[CustomerID] [int] NOT NULL,
[PONumber] [varchar] (80) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[paid] [bit] NULL,
[total] int
) ON [PRIMARY]
GO
CREATE CLUSTERED INDEX [SalesTrackingCDX] ON [dbo].[SalesTracking] ([SalesDate]) ON [PRIMARY]
GO
INSERT dbo.SalesTracking
  (SalesDate, SalesPersonID, CustomerID, PONumber, paid, total)
VALUES
  ('2024-03-15 10:45:55.067', 1, 1,'PO965' ,1, 100),
  ('2023-09-24 10:45:55.067', 1, 2,'PO627' ,1, 200),
  ('2022-07-02 10:45:55.067', 1, 3,'PO6'   ,1, 300),
  ('2022-11-03 10:45:55.067', 1, 4,'PO283' ,1, 400),
  ('2022-11-26 10:45:55.067', 1, 5,'PO735' ,1, 500),
  ('2023-04-28 10:45:55.067', 1, 6,'PO407' ,1, 600),
  ('2022-09-09 10:45:55.067', 1, 7,'PO484' ,1, 700),
  ('2024-03-13 10:45:55.067', 1, 8,'PO344' ,1, 700),
  ('2024-04-24 10:45:55.067', 1, 9,'PO254' ,1, 800),
  ('2022-06-19 10:45:55.067', 1, 10,'PO344',1, 800)
GO
When I run this query, how many unique values are returned for the SalesRank column?
SELECT
  st.SalesDate
, st.SalesPersonID
, st.total
, RANK () OVER (PARTITION BY st.SalesPersonID
                ORDER BY st.total desc) AS SaleRank
FROM dbo.SalesTracking AS st;

See possible answers