[英]SQL Distinct Count with Group By
我在這個問題上的表有三列:Player,Team和Date_Played。
Player Team Date_Played
John Smith New York 2/25/2014
Joe Smith New York 2/25/2014
Steve Johnson New York 2/25/2014
Steph Curry Orlando 2/25/2014
Frank Anthony Orlando 2/26/2014
Brian Smith New York 2/26/2014
Steve Johnson New York 2/27/2014
Steph Curry New York 2/28/2014
我知道如何獲得一個不同的團隊名稱或日期列表,但我正在尋找的是一個將按團隊分組並計算不同團隊和日期組合的數量的查詢。 所以輸出應該如下所示:
Team Count
New York 4
Orlando 2
到目前為止,我有:
SELECT DISTINCT Tm, Count(Date_Played) AS Count
FROM NBAGameLog
GROUP BY NBAGameLog.[Tm];
但這給了我按日期分組的記錄總數。
此查詢已在Access 2010中進行了測試:
SELECT Team, Count(Date_Played) AS Count
FROM
(
SELECT DISTINCT Team, Date_Played
FROM NBAGameLog
) AS whatever
GROUP BY Team
少一點代碼:
SELECT Team, Count(distinct Date_Played) AS Count
FROM NBAGameLog
GROUP BY Team
它確實顯示與第一個答案相同的執行計划。
如果我理解你,你正在尋找這樣的查詢:
SELECT x.Team, count(*)
FROM
(SELECT Team, Date_Played
FROM NBAGameLog
GROUP BY Team, Date_Played) AS x
GROUP BY x.Team
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.