搜索
您的当前位置:首页正文

Sql试题

2020-01-25 来源:易榕旅网
 9-18

1.在表Employee 中有一列为EmpName,执行删除语句: Delete from Employee where EmpName like ‘_[ae]%’

下面包含EmpName列的值( )值的数据行可能被删除(选择一项) a) Whyte b) Carson c) Aunet d) Hunyer

2.在SQL Server2005中,查找student表中所有身份证号码CardNo的前三位为010或020的记录,以下语句正确的是()。(选择二项)

a) select * from student where cardno like ’010%’or cardno like’020%’ b) select * from student where cardno like ’010%’or’020%’ c) select * from student where cardno like ’0[1,2]0%’ d) select * from student where cardno like ‘0(1,2)0%’

3.在SQL Server 2005中,假定一个学生选修课管理系统中有两个表,包括:student(学生)表,其结构为:sID(学号),sName(姓名);studentCourse(学生选课)表,其结构为:sID(学号),cID(课程编号),score(成绩)。那么列出所有已选课学生的学号、姓名、课程编号和成绩的SQL的语句是 ()。 (选择二项)

a) Select sID,sName,cID,score from student,studentCourse

b) Select sID,sName,cID,score from student inner join studentCourse on student.sID=studentCourse.sID

c) Select sID,sName,cID,score from student outer join studentCourse on student.sID=studentCourse.sID

d) Select sID,sName c ID,score from student,studentCourse where student.sID=studentCourse.sID

4.假设Employee表中的EmpId列为主键,并且为自动增长的标识列,同时还有EmpGrade列和EmpSalaryGrade列,所有列的数据类型都是整形,执行下列T-SQL语句: Insert Employee(EmpId,EmpGrade, EmpSalaryGrade) values(1,2,3) 运行结果将是( ) (选择一项)

a) 插入数据成功,EmpId列的数据为1 b) 插入数据成功,EmpId列的数据为2 c) 插入数据成功,EmpId列的数据为3 d) 插入数据失败

5.假设Students表中有主键SCode,Score表中有外键 stuNo列,stuNo引入Scode列来实施引用完整性约束,此时如果使用T-SQL

Update Students set Scode = ‘001’ where scode = ‘002’(选择一项)

a) 肯定会产生更新错误

b) 可能会更新Students表中的两行数据 c) 可能会更新Score表中的一行数据 d) 可能会更新Students表中的一行数据

6. 有关数据冗余说法错误的是()。(选择一项) a) 数据库中,数据存在副本的现象,就是数据冗余

b) 通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性

c) 在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余。 d) 数据冗余通常是由于数据库设计引起的。

7. 假定有一个用户表,表中包含字段:userid (int)、username (varchar)、 password(varchar)、等,该表需要设置主键,以下说法正确的是()。(选择两项)

a) 如果不能有同时重复的username和password,那么username和password可以组合在一起作为主键。

b) 此表设计主键时,根据选择主键的最小性原则,最好采用userid作为主键。

c) 此表设计主键时,根据选择主键的最小性原则,最好采用username和password作为组合键。

d) 如果采用userid作为主键,那么在userid列输入的数值,允许为空。

8关于标识列,以下说法正确的是()。(选择一项)

a) 使用sql语句插入数据时,可以为标识列指定要插入的值。 b) 设定标识时,必须同时指定标识种子和标识递增量。

c) 若设定标识时,未指定标识递增量,那么使用sql语句插入数据时,可以为标识列指定递增值。

d) 只能把主键设定为标识列。

9现有表user,字段:userid,username, salary, deptid,email; 表department,字段:deptid, deptname;下面()应采用检查约束来实现。(选择一项)

a) 若department中不存在deptid为2的纪录,则不允许在user表中插入deptid为2的数据行。

b) 若user表中已经存在userid为10的记录,则不允许在user表中再次插入userid为10的数据行。

c) User表中的salary(薪水)值必须在1000元以上。

d) 若User表的email列允许为空,则向user表中插入数据时, 可以不输入email值。

10现有表book,主键bookid设为标识列。若执行语句:select * into book2 from book, 以下说法正确的是()。(选择两项)

a) 若数据库中已存在表book2, 则会提示错误。 b) 若数据库中已存在表book2, 则语句执行成功,并且表book2中的bookid自动设为标识。

c) 若数据库中不存在表book2, 则语句执行成功,并且表book2中的bookid自动设为主键。 d) 若数据库中不存在表book2, 则语句执行成功,并且表book2中的bookid自动设为标识。

11以下()语句从表TABLE_NAME中提取前10条记录。(选择一项)

a) select * from TABLE_NAME where rowcount=10 b) select TOP 10 * from TABLE_NAME c) select TOP of 10 * from TABLE_NAME

d) select * from TABLE_NAME where rowcount<=10

12从“产品”表里查询出价格高于产品名称为“一次性纸杯”的产品的记录,此SQL语句为()。(选择一项)

a) SELECT * FROM 产品WHERE 价格>‘一次性纸杯’;

b) SELECT * FROM 产品WHERE 价格>(SELECT * FROM 产品WHERE 产品名称>’ 一次性纸杯’);

c) SELECT * FROM 产品WHERE EXISTS 产品名称=’ 一次性纸杯’);

d) SELECT * FROM 产品WHERE 价格>(SELECT 价格FROM 产品WHERE 产品名称=’ 一次性纸杯’);

13查找 student表中所有电话号码(列名:telephone)的第一位为8或6,第三位为0的电话号码()。(选择一项)

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*'

14现有表book,字段:id (int),title (varchar), price (float); 其中id字段设为标识, 使用insert语句向book表中插入数据,以下语句错误的是()。(选择一项)

a) insert into book (id,title,price) values(1,'java',100) b) insert into book (title,price) values('java',100) c) insert into book values ('java',100) d) insert book values('java',100)

15现有表Employee,字段:id (int),firstname(varchar), lastname(varchar); 以下sql语句错误的是()。(选择一项)

a) select firstname+'.'+lastname as 'name' from employee b) select firstname+'.'+lastname='name' from employee c) select 'name'=firstname+'.'+lastname from employee d) select firstname,lastname from employee

16若要删除book表中所有数据,以下语句错误的是()。(选择两项)

a) truncate table book b) delete * from book c) drop table book d) delete from book

17学生成绩表grade中有字段score(float),现在要把所有在55分至60之间的分数提高5分,以下sql语句正确的是()。(选择两项)

a) Update grade set score=score+5

b) Update grade set score=score+5 where score>=55 or score <=60 c) Update grade set score=score+5 where score between 55 and 60 d) Update grade set score=score+5 where score >=55 and score <=60

18 现有书目表book,包含字段:price (float); 现在查询一条书价最高的书目的详细信息,以下语句正确的是()。(选择两项)

a) select top 1 * from book order by price asc b) select top 1 * from book order by price desc

c) select top 1 * from book where price= (select max (price)from book) d) select top 1 * from book where price= max(price)

19) 现有书目表book,包含字段:价格price (float),类别type(char); 现在查询各个类别的平均价格、类别名称,以下语句正确的是()。(选择一项)

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

20) 若student表中包含主键sudentid,则执行语句:update student set studentid=100 where studentid=101, 结果可能是()。(选择两项)

a) 错误提示:主键列不能更新。 b) 更新了一条数据。

c) 错误提示:违反主键约束。 d) 既不提示错误,也不更新数据。

21) 查询student表中的所有非空email信息, 以下语句正确的是()。(选择一项)

a) Select email from student where email !=null

b) Select email from student where email not is null c) Select email from student where email <> null d) Select email from student where email is not null 22) 以下不属于企业管理器功能的是()。(选择一项)

a) 创建并管理所有数据库、登陆、用户、权限等。

b) 管理和执行数据导入导出、数据库备份等多项辅助功能。 c) 定义 sql server组。

d) 调试、执行sql语句, 批处理和脚本。

23) 以下()语句的返回值不是22。(选择一项)

a) Select abs(-22) b) Select abs(22)

c) Select ceiling(22.1) d) Select floor(22.9)

24) 成绩表grade中字段score代表分数,以下()语句返回成绩表中的最低分。(选择两项)

a) select max(score) from grade

b) select top 1 score from grade order by score asc c) Select min(score) from grade

d) select top 1 score from grade order by score desc

25) 现有订单表orders,包含用户信息userid, 产品信息 productid, 以下()语句能够返回至少被订购过两回的productid? (选择一项)

a) select productid from orders where count(productid)>1 b) select productid from orders where max(productid)>1

c) select productid from orders where having count(productid)>1 group by productid d) select productid from orders group by productid having count(productid)>1 26) 关于聚合函数,以下说法错误的是()。(选择一项)

a) Sum返回表达式中所有数的总合,因此只能用于数字类型的列。 b) Avg返回表达式中所有数的平均值,可以用于数字型和日期型的列。 c) Max和Min可以用于字符型的列。 d) Count可以用于字符型的列。

27现有顾客表customers, 包含数据如下表,若执行sql语句:select count(distinct(city)) from customers,以下()是输出结果。(选择一项) cid cname city

jac null 2 lee beijing 3 tom

4 chen beijing a) 1 b) 2 c) 3 d) 4

28现有顾客表customers, 包含数据如下表,若执行sql语句:select avg(discount) from customers,以下()是输出结果。(选择一项) cid cname discount 1 jack null 2 lee 8 3 tom 7 4 chen 1

a) 错误提示:不能对null进行avg操作

b) 16 c) 8 d) 4

29 Sql server提供了一些日期函数,以下说法错误的是()。(选择两项)

a) select dateadd(mm,4,’01/01/1999’) 返回值为:05/01/99 b) select datediff(mm,'03/06/2003','03/09/2003') 返回值为:3 c) select datepart(day,'03/06/2003') 返回值为:6 d) select datename(dw,'03/06/2003') 返回值为:6

30现有书目表book,数据见下表。 现在执行sql语句:update book set title=replace(replace(title,'j','a'),'servlet','csharp'),执行结果是()。(选择一项)

bookid title 1 jsp&servlet 2 jsp

3 Professional servlet 4 asp

a) 更新了3条记录 b) 更新了2条记录 c) 更新了1条记录

d) 该sql语句有错误,无法执行

因篇幅问题不能全部显示,请点此查看更多更全内容

Top