假设我们有两个表,一个是学生表(students),包含学生的ID和姓名,另一个是选课表(courses),包含学生ID和课程名称。
我们可以使用以下SQL查询来查找只选修CS220课程而没有选修其他课程的学生:
SELECT s.ID, s.Name
FROM students s
LEFT JOIN courses c ON s.ID = c.StudentID
WHERE c.CourseName = 'CS220'
GROUP BY s.ID, s.Name
HAVING COUNT(c.CourseName) = 1
以上查询使用了左连接(LEFT JOIN),它会返回所有学生以及他们选修的课程。然后我们使用WHERE子句来过滤出只选修CS220课程的学生。接下来,使用GROUP BY子句按学生ID和姓名进行分组,并使用HAVING子句过滤出只有一门课程的学生。
请注意,这只是一个示例查询,实际的表和字段名称可能会有所不同,需要根据实际情况进行调整。