這裏是我的表內以下記錄:SQL:顯示全名+過濾器按主題
EnrollStudents
EnrollID StudentID SubjID
1 1 1
2 1 2
3 1 3
4 2 1
5 3 2
學生
StudentID UserID YearID FirstName LastName
1 1 1 John Doe
2 3 1 Peter Pan
3 7 1 Isaac Newton
主題
SubjID SubjCode YearID
1 English 1
2 Math 1
3 Science 1
和輸出應該是...
StudentID FullName
2 Peter Pan
3 Isaac Newton
我能想出下面的SQL語句(感謝Ic.)
SELECT s.StudentID, s.FirstName + ' ' s.LastName AS FullName
FROM Students AS s
LEFT OUTER JOIN EnrollStudents AS es ON s.StudentID = es.StudentID
GROUP BY s.StudentID, s.FirstName, s.LastName
HAVING COUNT(DISTINCT(es.SubjID)) < (SELECT COUNT(*) FROM Subjects)
有沒有辦法,我可以按主題過濾查詢?比方說,我選擇英語,只有艾薩克牛頓可以報名。
什麼DBMS +版本您使用的? – 2012-07-23 15:38:11
@TimSchmelter SQL Server 2008 – abramlimpin 2012-07-23 15:43:41