发信人: xsimon()
整理人: teleme(2001-04-09 19:37:00), 站内信件
|
作 者: qdwind(风中浪子) 2001-04-08 11:34:03
假设在table1(报名表)中有两个字段:xm,km(姓名,所报科目),
该表用来记录学生报考的科目,每个学生可以报考多个科目。
如果要查询每个学生分别报了几个科目,可用下列语句:
select xm,count(xm) from table1 group by xm
我现在要查询:报考了1科的、报考了2科的、报考了3科的……分别有多少人。
这个查询能否用一个SQL语句写出呢?
百思不得其解,请教各位SQL高手。
//************************************
作 者: xsimon() 2001-04-09 11:33:46
SELECT km_number, COUNT(km_number) AS People_count
FROM (SELECT xm, COUNT(xm) AS km_number
FROM dbo.TABLE1
GROUP BY xm) tt
GROUP BY km_number
|
|