问题
单项选择题
若要求“查询选修了 3 门以上课程的学生的学生号”,正确的 SQL 语句是______。
A.SELECT S# FROM SC GROUP BY S# WHERE COUNT(*)>3
B.SELECT S# FROM SC GROUP BY S# HAVING COUNT(*)>3
C.SELECT S# FROM SC ORDER BY S# WHERE COUNT(*)>3
D.SELECT S# FROM SC ORDER BY S# HAVING COUNT(*)>3
答案
参考答案:B
解析:先用Group By子句按S#对记录分组,再用COUNT函数统计每组的记录数。HAVING短语指定选择组 的条件,只有满足条件(元组数>3,表示此学生选修的课程超过3门)的组才会被选出来。故用SQL语句: SELECT S# FROM SC GROUP BY S# HAVING COUNT(*)>3。