一、选择题
1.查询表stock中每个交易所的平均单价的SQL语句是( C)。
A.SELECT交易所,AVG(单价)FROM stock GROUP BY单价
B. SELECT交易所,AVG(单价)FROM stock ORDER BY单价
C.SELECT交易所,AVG(单价)FROM stock GROUP BY交易所
D.SELECT交易所,AVG(单价)FROM stock ORDER BY交易所
2.查询表Employee员工表中每个部门员工平均工资的SQL语句是(C)
A. select DepartmentID,avg(Salary) from Employee group by Salary
B. select DepartmentID,avg(Salary) from Employee order by Salary
C. select DepartmentID,avg(Salary) from Employee group by DepartmentID
D. select DepartmentID,avg(Salary) from Employee order by DepartmentID
3.使用SQL语句进行分组检索,为了去掉不满足条件的分组,应当(D )。
A.使用WHERE子句
B,先使用WHERE子句,再使用HAVING子句
C.先使用HAVING子句,再使用WHERE子句
D.先使用GROUP BY子句,再使用HAVING子句
4.关于查询语句中ORDER BY子句使用正确的是(D )。
A.如果未指定排序字段,则默认按递增排序
B.如果降序排列,则必须使用ASC关键字
C.连接查询不允许使用ORDER BY子句
D.ORDER BY子句后面可以是一个字段,也可以是多个字段
5.设A,B两个表的记录数分别为3和5,对两个表执行交叉连接查询,查询结果中最 多可获得(D)条记录。
A.3
B.4
C.12
D.15
6.查询员工工资信息时,结果按工资降序排列,正确的是(B)
A.ORDER BY工资
B.ORDER BY工资desc
C.ORDER BY工资asc
D.ORDER BY工资dictinct
7.模式查找like '_a%',下面哪个结果是可能的?(B)
A. aili
B. bai
C. bba
D. cca
8.模式查找like '_b%',下面哪个结果是可能的?(C )
A. aili
B. bai
C. bba
D. cca
9. SQL中,条件年龄 BETWEEN 15 AND35表示年龄在15~35之间,且(A)。
A.包括15岁和35岁
B.不包括15岁和35岁
C.包括15岁但不包括35岁
D.包括35岁但不包括15岁
10.现有书目表book,包含字段:价格 price (float),类别type(char);现在查询各个类 别的平均价格、类别名称,以下语句正确的是(A)。(选择一项)
A. select avg(price),type from book group by type
B. select count(price), type from book group by price
C. select avg(price),type from book group by price
D. select count (price), type from book group by type
11.通过SQL,如何从 Persons表中选取FirstName 列的值以“a”开头的所有记 录?(A)
A. SELECT * FROM Persons WHERE FirstName LIKE 'a%'
B.SELECT *FROM Persons WHERE FirstName= 'a '
C.SELECT * FROM Persons WHERE FirstName LIKE '%a'
D.SELECT *FROM Persons WHERE FirstName= '%a%'
12.SQL Server提供了一些字符串函数﹐以下说法错误的是(A )。(选择―项)
A. select right( ' hello ' ,3)返回值为: hel
B. select ltrim(rtrim( 'hello'))返回值为:hello(前后都无空格)
C. select replace( 'hello', 'e', 'o ')返回值为:hollo
D. select len( 'hello')返回值为:5
13. 现有表book1,主键bookid设为标识列。若执行语句: select * into book2 from book1,以下说法正确的是( AD)。 (选择两项)
A.若数据库中已存在表book2,则会提示错误
B.若数据库中已存在表book2,则语句执行成功,并且表book2中的bookid自动 设为标识
C.若数据库中不存在表book2 ,则语句执行成功,并且表book2中的bookid自动 设为主键.
D.若数据库中不存在表book2,则语句执行成功,并且表book2中的bookid自动 设为标识
14.下面哪两个是用于SQLServer中模糊查询的通配符?(AD)
A._
B. *
C.?
D. %
15.用于求系统日期的函数是( B)。
A. YEAR() .
B. GETDATE()
C. COUNT() .
D. SUM()
16.以下( B)语句从表TABLE_ NAME中提取前10条记录。(选择- -项)
A. select * from TABLE_ NAME where rowcount= 10
B. select TOP 10 * from TABLE_ NAME
C. select TOP percent 10 * from TABLE_ NAME
D. select * from TABLE_ NAME where rowcount<= 10
17. 现有书目表book,包含字段: price (float);现在查询一条书价最高的书目的详细 信息,以下语句正确的是( B)。 (选择一项)
A. select top 1 * from book order by price asc
B. select top l * from book order by price desc(降序)
C. select *from book where price= max(price)
D. select top l * from book where price= max(price)
18.在SQL查询时,使用WHERE子句指出的是(B)。
A.查询目标
B.查询条件
C.查询视图
D.查询结果
19.下列聚合函数中正确的是(C)。
A.SUM( * )
B.MAX( * )
C.COUNT( * )
D. AVG(*)
20.查找student表中所有电话号码(列名:telephone)的第一位为8或6,第三位为0 的电话号码( C)。(选择一项)
A.SELECT telephone FROM student WHERE telephone LIKE '[8,6]%0 * '
B.SELECT telephone FROM student WHERE telephone LIKE '(8,6)* 0%'
C.SELECT telephone FROM student WHERE telephone LIKE '[8,6]_0%'
D.SELECT telephone FROM student WHERE telephone LIKE '[8,6]_0 * '
21.通过SQL,如何从Persons表中选取所有的列?(C)
A. SELECT [all] FROM Persons
B.SELECT Persons
C. SELECT * FROM Persons
D.SELECT * .Persons
22.通过SQL,如何从 Persons表中选取 FirstName列的值等于 Peter的所有记 录?(D)
A.SELECT [all] FROM Persons WHERE FirstName= 'Peter'
B.SELECT *FROM Persons WHERE FirstName LIKE 'Peter'
C.SELECT[all] FROM Persons WHERE FirstName LIKE 'Peter'
D.SELECT *FROM Persons WHERE FirstName= 'Peter'
23.通过SQL,如何返回Persons表中记录的数目?(D)
A. SELECT COLUMNS() FROM Persons
B.SELECT COLUMNS( * )FROM Persons
C.SELECT COUNT() FROM Persons
D.SELECT COUNT( * )FROM Persons
24.SQL是(B)的语言,易学习。
A.过程化
B.非过程化
C.格式化
D.导航式
25. SQL是(C)语言。
A.层次数据库
B.网络数据库
C.关系数据库
D.非数据库
26.SQL具有(B)的功能。
A.关系规范化、数据操纵﹑数据控制
B.数据定义,数据操纵﹑数据控制
C.数据定义、关系规范化、数据控制
D、数据定义、关系规范化﹑数据操纵
27.SQL的数据操纵语句包括SELECT、INSERT, UPDATE和 DELETE等。其中最 重要的也是使用最频繁的语句是( A)。
A.SELECT
B. INSERT
C. UPDATE
D.DELETE
28.SQL具有两种使用方式,分别称为交互式SQL和(C)。
A.提示式SQL
B.多用户SQL
C.嵌人式SQL
D.解释式SQL
29.SQL中,实现数据检索的语句是( A)。
A.SELECT
B.INSERT
C.UPDATE
D、DELETE
30.下列 SQL语句中,修改表结构的是( A)。
A. ALTER
B.CREATE
C.UPDATE
D.INSERT
以下4题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下。 S(S#,SN,SEX,AGE,DEPT)c(C#,CN) sC(S#,C#,GRADE) 其中,S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。
31.检索所有比“王华”年龄大的学生姓名,年龄和性别。正确的SELECT语句是(A)
A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM SWHERE SN='王华')
B. SELECT SN,AGE,SEX FROM S WHERE SN='王华'
C. SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN='王华')
D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE
32.检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是(C)。
A. SELECT S. SN,SC.C# ,SC.GRADE FROM SWHERE S.S#=SC.S#
B.SELECT S.SN,SC.C#,SC.无识别结果 FROM SC WHERE S.S#=S
C. GRADEC.SELECT S.SN,SC.C#,SC.GRADE FROM s,sC WHERE S.S#=SC.S#
D.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC
33.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME, TEACHER),学生选课关系是SC(S #,C #,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及关系( D)。 A.s
B.SC,C
C. S,SC
D.S,C,SC
34.若用如下SQL语句创建一个student表:
CREATE TABLE student(NO C(4)NOT NULL,
NAME C(8)NOT NULL,
SEX C(2), ' AGE N(2))
可以插入到student表中的是(B )。
A. ( '1031','曾华·,男,23)
B.('1031','曾华',NULL,NULL)
C.(NULL,'曾华','男', '23')
D.( '1031 ',NULL,'男',23)
35、要删除book表中所有数据,以下语句正确的是(D)
A.delete table book
B.delete*from book
C.drop book
D.delete from book
36、SQL中,删除一个表中所有的数据,但保留表结构的命令是(A)
A、DELETE
B.DROP
C.CLEAR
D.REMORE
二、填空题
1.在表中插入数据的命令关键字是( INSERT)。
2.修改表中数据的命令关键字是( UPDATE) 。
3.删除表中数据的命令关键字是( DELETE).或(truncate)
4.在表中查询数据的命令关键字是( SELECT)。
三、判断题(蓝色对红色错)
1. Select语句用于查询数据。
2.SQL Server 聚合函数有最大、最小,求和,平均和计数等,它们分别是 max, min , sum , avg和count。
3.默认排序方式为升序排序。
4.通配符“_”表示某单个字符。
5.语句select day(' 2013-12-26')的执行结果是26。
6.语句select len( '新年快乐! ')的执行结果是5。
7.降序排序关键字是asc。
8.在SQL语句中,分组用order by子句,排序用group by子句。
9.通配符“%”表示某单个字符。
10.如果当前日期是2013年12月26日,那么year( getdate())-year( '1998-1-1')的执 行结果是'15-11-15'。