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中查找未在该子查询结果中出现的学生姓名和班级。