(33)至(35)题基于“学生-选课-课程”数据库中如下三个关系: S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER) |
若要求查找姓名中第一个字为“李”的学生号和姓名。下面列出的SQL语句中,哪个(些)是正确的 Ⅰ.SELECT S#,SNAME FROM S WHERE SNAME=’李%’ Ⅱ.SELECT S#,SNAME FROM S WHERE SNAME LIKE’李%’ Ⅲ.SELECT S#,SNAME FROM S WHERE SNAME LIKE’李_’
A.Ⅰ
B.Ⅱ
C.Ⅲ
D.全部
参考答案:B
解析: 本题是对SQL语句语句中的查询语句的考查。该语句的一般格式为: SELECT[ALL|DISTINCT]<目标列表达式 >... FROM<基本表>>... WHILE<条件表达式> GROUP BY<列名> 其中WHILE<条件表达式>中的列名为字符时,采用如下形式:WHILE sname LIKE’李%’,字符-(下划线)表示可以跟任意的单个字符相匹配,而字符%(百分号)可以跟任意长的字符串匹配。本题中的所选列向量为字符,且要求学生的第一个字为“李”,后面并没有限定,因此采用字符%(百分号)。由上面分析可知,正确答案为选项B。