2017-06-09 113 views
-1

我有表如下SQL GROUP BY和包括數在GROUP BY子句

User ID | file 
---------------- 
1  | File1  
2  | File2  
3  | File3  
4  | File4  
1  | File5  
1  | File6 
3  | File7 
---------------- 

要求如下:

File Count | Users 
------------------- 
1   | 100  
2   | 300  
3   | 800  
4   | 70  
5   | 20  
8   | 8 
------------------- 

所以結果應該顯示用戶數與算的文件。

這意味着,我必須by子句包括計數到組

+2

你的問題不明確。 –

+1

你的問題是不可理解的。 – Mansoor

+0

你是否試圖說,你想確定每個用戶有多少文件,然後對多少用戶有1個文件與多少用戶有2個文件等進行總結,這就是你的最終結果? (所以匹配的輸入樣本應該有3544行?) –

回答

0

我不知道你打算像這樣(的用戶提供了一定數量的文件數):

SELECT RC1 AS FILE_COUNT, COUNT(*) AS RC2 
FROM 
(SELECT USER_ID, COUNT(*) RC1 FROM YOURTABLE GROUP BY USER_ID) A 
GROUP BY RC1 
+0

感謝etsa,它的工作 –

-1

幹得好!這將爲每個用戶生成文件的數量。

select userid, COUNT(filename) as FileCount from files 
group by userid 

如果您正在尋找每個文件的用戶然後在這裏被更新的答案

select count(userid) as usercount, filename from files 
group by filename 
+0

但他希望每個文件的用戶數。 –