2013-05-02 54 views
0

下面是一个示例模式:选择值的计数,由同一列编组,不同的另一

| type_id | university_id | 
--------------------------- 
| 1 |  u01  | 
| 2 |  u01  | 
| 2 |  u01  | 
| 3 |  u02  | 
| 4 |  u02  | 

而且我想是的具有相同university_id记录数的计数中,university_id本身,它不能包括type_id重复的,所以结果看起来像这样由于上述相同的数据:

| university_id | COUNT(university_id) | 
---------------------------------------- 
|  u01  |   2   | 
|  u02  |   2   | 

现在,我尝试以下,但它显然给我一个COUNT(u01)Ø ˚F3代替2

SELECT university_id, COUNT(university_id) FROM table GROUP BY university_id 

是否可以做我想做的,如果又如何?

回答

3

你应该type_id算唯一没有被university_id

SELECT university_id, COUNT(DISTINCT type_id) TotalCount 
FROM tableName 
GROUP BY university_id 
1

您在type_id列需要count(distinct)

select university_id, count(distinct type_id) 
from table 
group by university_id 
相关问题