查询选修了课程号为“C1”的学生的姓名和年龄,若用下列SQL的SELECT语句表达时,哪一个是错误的
A.SELECT SNAME,AGE FROM S WHERE S# =(SELECT SS# FROM SC WHERE C#='C1')
B.SELECT SNAME,AGE FROM S,SC WHERE S#=SS# AND SC#='C1'
C.SELECT SNAME,AGE FROM S,SC WHERE S#=SS# AND SC#='C1'ORDER BY S#
D.SELECT SNAME,AGE FROM S WHERE S# =(SELECT SS# FROM SC WHERE SC#='C1')
参考答案:A
解析:【命题目的】本题主要考查了同时对多个表进行查询的能力。【解题要点】当有多个表具有相同的的属性时,在查询的时候要明确该属性属于哪个表。【错解分析】由于在sc和c表中都有C#字段,因此在SQL语句中应该明确是那个表中的C#字段。同理S#也应该明确。由于A)选项中C#字段明确为c表中的字段,而查询所需要的是sc表中的C#字段,故A)选项错误。【考点链接】掌握SQL语言中如何正确地使用条件查询语句,以及复杂的查询语句。