1. 程式人生 > >【MYSQL】超過5名學習的課

【MYSQL】超過5名學習的課

有一個courses 表 ,有: student (學生) 和 class (課程)

請列出所有超過或等於5名學生的課。

例如,表:

應該輸出:

Note: 學生在每個課中不應被重複計算!!!

解法一:這道題有一個容易忽視的條件,每個學生每門課只記算一次。所以應該過濾重複再計算。

select class from courses group by class having count(DISTINCT student)>=5

解法二:不要重複計算學生重複的課程

select class from (select distinct student,class from courses) as c 
group by class having count(class)>=5