SQL經典50查詢語句案例_10:
10、查詢沒有學全所有課的同學的學號、姓名:
SELECT stu.SId, stu.StuName FROM
student stu,
(SELECT COUNT(CId) as number FROM course)t1,
(SELECT SId,COUNT(CId) as number FROM sc GROUP BY SId)t2
WHERE
t1.number > t2.number AND t2.SId = stu.SId
在MySQL命令行中的運行情況:
總結:分步驟查詢,先查詢總課程數量和每個學生參與課程的數量(內嵌select from),然后利用查詢結果的比較判斷沒有學全課的同學,進一步從student表中獲取滿足條件的同學的學號和姓名。