检索没有选修C06课程的学生姓名及其所在班

2、假设教学数据库中已建立三个关系:
学生关系 student(sno, sname, sex, birth, height, class, address)
课程关系course(cno, cname, credit)
选修关系elective(sno, cno, grade)
试用关系代数和SQL语言分别写出下列查询:

检索没有选修C06课程的学生姓名及其所在班级。
SELECT SNAME ,CALSS FROM S WHERE SNO NOT IN (SELECT SNO FROM SC WHERE CNO='C06‘)这样写对吗

该回答引用ChatGPT

您的查询语句有误,正确的SQL查询语句应该是:

SELECT student.sname, student.class
FROM student
WHERE student.sno NOT IN (
    SELECT elective.sno
    FROM elective
    WHERE elective.cno = 'C06'
);

此查询使用子查询在选修关系表elective中查找选修了课程C06的学生编号,然后在学生关系表student中查找未在该子查询结果中出现的学生姓名和班级。