设有三个关系: S(S#,SNAME,AGE,SEX) SC(S#,C#,SCORE) C(C#,CNAME,TEACHER) 用关系代数表达式和SQL语句检索选修课程包含LIU老师所授全部课程的学生学号。
A、πS#,C#(SC)÷πC#(σTNAME='LIU'(SC)) SELECT DISTINCT S# FROM SC AS X WHERE NOT EXISTS (SELECT * FROM C WHERE TNAME=’LIU’ AND NOT EXISTS (SELECT * FROM SC AS Y WHERE Y.S#=X.S# AND Y.C#=C.C#));
B、πS#,C#(SC)÷πC#(σTNAME='LIU'(C)) SELECT DISTINCT S# FROM SC AS X WHERE NOT EXISTS (SELECT * FROM C WHERE TNAME=’LIU’ AND NOT EXISTS (SELECT * FROM SC AS Y WHERE Y.S#=X.S# AND Y.C#=C.C#));
C、πS#,C#(SC)÷πC#(σTNAME='LIU'(C)) SELECT DISTINCT S# FROM SC AS X WHERE NOT EXISTS (SELECT * FROM C WHERE TNAME=’LIU’ AND EXISTS (SELECT * FROM SC AS Y WHERE Y.S#=X.S# AND Y.C#=C.C#));
D、πS#,C#(SC)÷πC#(σTNAME='LIU'(C)) SELECT DISTINCT S# FROM SC WHERE NOT EXISTS (SELECT * FROM C WHERE TNAME=’LIU’ AND EXISTS (SELECT * FROM SC AS Y WHERE Y.S#=X.S# AND Y.C#=C.C#));