SQLServerCentral Article

The Paradox of NOLOCK: How Dirty Reads Can Sometimes Be Cleaner

Every SQL Server developer has heard it: "Don't use NOLOCK in production!" But this common rule isn't as simple as it seems. Sometimes, what seems like a bad practice can actually be the right choice. Let's explain what NOLOCK really does in simple terms. When you use NOLOCK, you're telling SQL Server "just show me […]

3.89 (9)

You rated this post out of 5. Change rating

2024-12-09

4,713 reads

SQLServerCentral Article

Leveraging SQL Transaction Control in Python Applications

Explore the fundamentals of Python's SQL transaction control, demonstrating how to control and enhance database operations for improved data integrity. The best practices and real-world examples for integrating strong transaction management in Python applications are covered in this article.

5 (1)

You rated this post out of 5. Change rating

2024-10-28

1,368 reads

SQLServerCentral Article

Django's ORM vs. Raw SQL: When to Use Which

When it comes to building websites, how you work with your database can make a huge difference in how well your site runs. That's especially true if you're using Django, a popular tool for making websites with Python. Django comes with something called an Object-Relational Mapping (ORM) layer, which is a fancy way of saying […]

5 (2)

You rated this post out of 5. Change rating

2024-01-26

4,226 reads

Blogs

Free PostgreSQL Performance Monitoring with pgNow

By

I’ve been putting together a new PostgreSQL session called “Performance Monitoring for the Absolute...

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...

Read the latest Blogs

Forums

sqlserver metrics to capture

By mtz676

Can this baselining and benchmarking sqlserver be done using extended events ? what are...

SSMS Object Explorer Not Showing Tables

By Ahr Aitch

If this post doesn't meet protocol here, please tell me how to improve as...

Do You Folks Mind Beginners Here?

By Ahr Aitch

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

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