2 つのクエリの結果が同じなのはなぜですか? ( Northwind データベースを使用しています。 )
SELECT ContactTitle
, COUNT(CustomerID) AS NumberOfCustomer
FROM dbo.Customers
WHERE ContactTitle LIKE '%sales%'
GROUP BY ContactTitle
HAVING COUNT(*) >= 5
ORDER BY NumberOfCustomer desc
と
SELECT
DISTINCT ContactTitle
, COUNT(CustomerID) AS NumberOfCustomer
FROM dbo.Customers
WHERE ContactTitle LIKE '%sales%'
GROUP BY ContactTitle
HAVING COUNT(*) >= 5
ORDER BY NumberOfCustomer desc
結果は次のとおりです。
ContactTitle NumberOfCustomer
--------------------- ----------------
Sales Representative 17
Sales Manager 11
Sales Associate 7
Sales Agent 5
私自身の理解では、2 番目のクエリは個別のタイトルを取得し、そのレコードをカウントするため、各タイトルのレコード数は 1 しかないため、結果はゼロになると予想しています。よろしいですか?