问题
单项选择题
有关系S(S#,SNAME,SEX),C(C#,CNA_ME),SC(S#,C#)。其中S#为学生号,
SNAME为学生姓名,SEX为性别,C#为课程号,CNAME为课程名。要查询选修“计算机文化”课的全体男学生姓名的SQL语句是:
SELECT SNAME FROM S,C,SC WHERE
A) S.S#=SC.S# AND SEX=‘男’AND CNAME=‘计算机文化’
B) S.S#=SC.S# AND C.C#=SC.C# AND CNAME=‘计算机文化’
C)SEX=‘女’AND CNAME=‘计算机文化’
D) S.S#=SC.S# AND C.C#=SC.C# AND SEX=‘男’AND CNAME=‘计算机文化’
答案
参考答案:D
解析: 本题涉及3个表的连接查询,需要我们解决的是WHERE后面的连接条件。首先连接表S与SC,连接条件为S.S#=SC.S#;然后再连接表C和SC,连接条件为巴C#=SC.C#。这样就可以将3个表连接起来。但是分析题意,同时还要在连接后所形成的表中满足条件“SEX='男'和CNAME=‘计算机文化’”。通过以上分析,连接是同时满足的关系,故应用“AND”连接,因此,WHERE子句内容应为“S.S#=SC. S# AND C.C#=SC.C# AND SEX=‘男’AND CNAME=‘计算机文化’”。