SQLServerCentral Editorial

Things Move Fast

I have several things I’d like to say in the editorial today, but I feel I have to start off with my condolences to the family of Queen Elizabeth II. For that matter, my condolences to the people of Britain. This truly is the end of an era. Things do indeed move fast sometimes. Working […]

External Article

Rollbacks, Undos and Undonts

Rollback scripts are designed to allow us to recover safely from a failed deployment that leaves the database in an indeterminate state. They must check exactly what needs to be reverted before doing so. If you work with an RDBMS that cannot support transaction DDL rollback they are vital. This article proposes a strategy where you create and test a rollback file, at the same time as the forward migration, and reuse it as a Flyway undo script.

SQLServerCentral Editorial

Developer Optimism

Developers, in general, are very optimistic about the code they write. This is likely one cause of their estimates of the time required being low, as well as the various bugs that slip through because of corner cases that appear for the problem being solved. Often developers think they've considered the various ways this code […]

Blogs

Taming Database Challenges: Insights from Redgate Keynote

By

I am excited to cover the Microsoft Keynote on Day 2: Redgate Keynote: Simplifying...

AI Innovation in Microsoft Keynote

By

I’m thrilled to be covering the Microsoft Keynote: Fuel AI Innovation with Azure Databases on Day...

Benefits of Migrating from Azure Synapse Analytics to Microsoft Fabric

By

Many customers ask me about the advantages of moving from Azure Synapse Analytics to...

Read the latest Blogs

Forums

query help

By Bruin

I need some help to optimize this query as it runs in many threads...

Unencrypted connections in Always on Availability Group

By Awais Afzal

Hi, In my Always On Availability environment, I am seeing two encrypt_option values as...

Error loading multiple CSV files in SSIS

By water490

Hi everyone I have a bunch of CSV files that I need to bulk...

Visit the forum

Question of the Day

Using Outer Joins

I have this data in a SQL Server 2019 database:

Customer table
CustomerID CustomerName
1          Steve
2          Andy
3          Brian
4          Allen
5          Devin
6          Sally

OrderHeader table
OrderID CustomerID OrderDate
1       1          2024-02-01
2       1          2024-03-01
3       3          2024-04-01
4       4          2024-05-01
6       4          2024-05-01
7       3          2024-06-07
8       2          2024-04-07
I want a list of all customers and their order counts for a period of time, including zero orders. If I run this query, how many rows are returned?
SELECT 
  c.CustomerName, COUNT(oh.OrderID)
 FROM dbo.Customer AS c
LEFT JOIN dbo.OrderHeader AS oh ON oh.CustomerID = c.CustomerID
WHERE oh.Orderdate > '2024/04/01'
GROUP BY c.CustomerName

See possible answers