【发布时间】:2014-11-16 18:18:23
【问题描述】:
数据库包含REGISTRATION 表和STUDENT 表。
REGISTRATION 表的列是:
CourseID, StudentID, CourseCode, Score, Year
CourseCode 列包含CS-101、MS-202 等课程的代码(每个学生 ID 都注册了许多课程)。我需要找到参加 3 门以上课程的学生的姓名和 ID。
我试过了:
Select distinct
CourseRegistrations.S_ID, Students.FirstName
from
Students, CourseRegistrations
where
Students.StudentID = CourseRegistrations.StudentID
group by
CourseRegistrations.S_ID, Students.FirstName
having
count(distinct CourseRegistrations.CourseCode) > 3
但这是显示文件的所有记录。
【问题讨论】:
-
Bad habits to kick : using old-style JOINs - 旧式 逗号分隔的表格列表 样式已替换为 ANSI 中的 proper ANSI
JOIN语法-92 SQL 标准(20 多年前),不鼓励使用它
标签: sql sql-server database count distinct