簡體   English   中英

帶分組的SQL不同計數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM