2011-12-19 4 views
0

튜토리얼 (tutorial_id, user_id, tutorial_date)이있는 테이블이 있으며 몇 명의 사용자가 특정 수의 튜토리얼을 작성했는지 확인해야합니다. 6 자습서 및 2 자습서를 한 3 사용자를했던 5 사용자가이 있다면고유 카운트에 의한 고유 카운팅 및 합계

그래서, 나는 다음과 같은 출력을 원하는 것 :

Tutorial_Count (unique)   Number of Students With this Tutorial Count 
6         5 
2         3 

나는 별개의 카운트 (첫 번째 열)을 얻을 수 있습니다 :

SELECT DISTINCT COUNT(user_id) from tutorials group by user_id 

그러나 나는 그 수를 괄호에 맞게 사용자의 수를 계산하는 방법을 모르겠어요.

답변

1

테스트되지 않은,하지만이 시도 :

;WITH cte AS 
(
    SELECT COUNT(user_id) AS Tutorial_Count 
    FROM tutorials 
    GROUP BY user_id 
) 
SELECT DISTINCT 
    Tutorial_Count, 
    COUNT(*) OVER (PARTITION BY Tutorial_Count) AS [Number of Students With this Tutorial Count] 
FROM 
    cte; 
+0

에이스 !!!! 그 위대한 작품! – Caveatrob