设student表中存放了学生的信息,要从student表中查出姓名(sname)的第二个字是“光”或"明"的学生的信息,正确的查询语句为: select * from student where()A、sname LIKE ’_[^光明]%’B、.sname LIKE ’_^光明%’C、sname LIKE ’_光明%’D、sname LIKE ’_[光明]%’

题目

设student表中存放了学生的信息,要从student表中查出姓名(sname)的第二个字是“光”或"明"的学生的信息,正确的查询语句为: select * from student where()

  • A、sname LIKE ’_[^光明]%’
  • B、.sname LIKE ’_^光明%’
  • C、sname LIKE ’_光明%’
  • D、sname LIKE ’_[光明]%’
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

“从学生关系S中检索姓′王′的学生学号”的SQL语句是

A.SELECT sno FROM sc WHERE sname=′王′

B.SELECT sno FROM sc WHERE sname IS LIKE′王%′

C.SELECT sno FROM sc WHERE sname LIKE′王%′

D.SELECT sno FROM sc WHERE sname LIKE′王_′


正确答案:C
解析:利用LIKE查询时,LIKE谓词的一般形式是:列名LIKE字符串常数。其中,字符串常数中字符的含义如下:
①_(下划线) 表示可以和任意的单个字符匹配。
②%(百分号) 表示可以和任意长的(可以为0) 字符串匹配。

第2题:

对于学生信息表:student(sno,sname,sex,age,dept),能够得到年龄在20岁到22岁之间的学生的姓名和学号的语句是

A.SELECT * FROM student WHERE age BETWEEN 20 AND 22

B.SELECT sname,sno FROM student WHERE age BETWEEN 20 AND 22

C.SELECT sname,sno FROM student WHERE age>=20

D.SELECT sname,sno FROM student WHERE age<=22


正确答案:B
解析:A) 选项中,不是选择所有列;C) 选项年龄没有小于等于22岁;D) 选项年龄没有大于等于20岁。

第3题:

(41)若要求查找姓名中第二个字为‘阳’字的学生的学号和姓名,下列 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

(41)【答案】B)
【解析】说明:LIKE谓词的一般形式:列名LIKE字符串常数这里,列名的数据类型必须是字符型。在字符串中字符的含义如下:
1字符‘—,表示可以和任意的单个字符匹配
2字符% 表示可以和任意长的(长度可以为零)字符串匹配。面I中没有LIKE谓词,III中的%查出来的不能保证第二个字符是“阳”

第4题:

对于学生信息表STUDENT(SNO, SNAME,SEX,AGE,DEPT)(STUDENT由学号SNO、姓名SNAME、性别SEX、年龄AGE、所在系DEPT 5个属性组成,其中SNO为主码),求年龄20~23岁之间的学生姓名和年龄,正确的语句是( )。A.SELECT SNAME,AGE FROM STUDENT WHERE AGE>20 AND AGE<23B. SELECT*FROM STUDENT WHERE AGE BETWEEN 20 AND 23C.SELECT SNAME,AGE FROM STUDENT WHERE AGE BETWEEN 20 AND 23D.以上均不正确


正确答案:C
A项在表述年龄的范围时有错误,SQL并不是那样表示的,B项不符题意,查询的结果为学生信息表的所有字段。

第5题:

以下2题基于以下说明。设有三个关系:

学生关系S(SNO,SNAME,AGE,SEX) (分别代表学生的学号、姓名、年龄、性别)

学习关系SC(SNO,CNO,GRADE) (分别代表学生的学号、课程编号、成绩)

若在关系S中查找姓名中第一个字为′王′的学生的学号和姓名。下面列出的SQL语句中,正确的是

A.SELECT SNO,SNAME FROM S WHERE SNAME=′王%′

B.SELECT SNO,SNAME FROM S WHERE SNAME=′王_′

C.SELECT SNO,SNAME FROM S WHERE SNAME LIKE′王%′

D.SELECT SNO,SNAME FROM S WHERE SNAME LIKE′王_′


正确答案:C
解析:SQL语言中可以利用LIKE以及匹配符%和_进行模糊查询。其中,%表示可以和任意长的(长度可以为零) 字符串匹配;_表示可以和任意长的单个字符匹配。

第6题:

对于学生信息表:student(sno,sname,sex,age,dept),如果把学生“小明”的姓名改为“小强”,则正确的语句是( )。

A)UPDATE SET sname=‘小明’WHERE sname=‘小强’

B)UPDATE student SET sname=‘小明’WHERE sname=‘小强’

C)UPDATE student SET sname=‘小强’

D)UPDATE student SET sname=‘小强’WHERE sname=‘小明’


正确答案:D
更新操作语句的一般格式为:

更新指定表中满足谓词的记录,把这些记录按照SET子句中的表达式更新相应字段上的值。本题所选的记录应当满足谓词WHERE sname=‘小明’,要更新成sname=‘小强’。

第7题:

对于学生信息表:student(sno,sname,sex,age,dept),如果把学生“张明”的姓名改为“张岩”,则正确的语句是

A.UPDATE SET sname='张明'WHERE sname='张岩'

B.UPDATE student SET shame='张明'WHERE shame='张岩'

C.UPDATE student SET sname='张岩'

D.UPDATE student SET sname='张岩'WHERE sname='张明'


正确答案:D
解析:A) 选项没有写出所要操作的表名;B) 选项把姓名写反了。C) 选项没有写明条件。

第8题:

若要求查找‘李’姓学生的学生号和姓名,正确的SQL语句是

A.SELECT S#,SNAME FROM S WHERE SNAME='李%.'

B.SELECT S#,SNAME FROM S WHERE SNAME LIKE '李%.'

C.SELECT S#,SNAME FROM S WHERE SNAME='%.李%.'

D.SELECT S#,SNAME FROM S WHERE SNAME LIKE '%.李%.'


正确答案:B
解析:SELECT S#,SNAME FROM S WHERE SNAME LIKE '李%.'只有这个查询语句可以查找'李'姓学生的学生号和姓名。“%.”的意思为后面可以跟任何字符。

第9题:

若要求查找姓名中第一个字为“李”的学生号和姓名。下面列出的SQL语句中,哪个(些)是正确的?

Ⅰ.SELECT S#,SNAME FROM S WHERE SNAME=‘李%’

Ⅱ.SELECT S#,SNAME FROM S WIERE SNAME LIKE'李%'

Ⅲ.SELECT S#,SNAME FROM S WHERE SNAME LIKE'李_'

A.Ⅰ

B.Ⅱ

C.Ⅲ

D.全部


正确答案:B
解析: SQL语句的一般格式为:
  SELECT[ALL| DISTINCT]目标列表达式>…
  FROM基本表>…
  WHILE条件表达式>
  CROUP BY列名>
  其中WHILE条件表达式>中的列名为宇符时,采用如下形式:WHILE sname LIKE '李%',字符_(下划线)表示可以眼任意的单个字符相匹配,而字符%(百分号)可以跟任意长的字符串匹配。本题中的所选列向量为字符,且要求学生的第一个字为“李”,后面并没有限定,因此采用字符%(百分号)。

第10题:

若要求查找姓名中第一个字为’王’的学生号和姓名。下面列出的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

更多相关问题