2023年7月13日发(作者:)
Sql server一期内部测试题
一选择题
1、 _______是指组成表的各列的名称及数据类型,也就是日常表格的“栏目信息”。(选择1项)
A) 表型
B) 记录
C) 属性
D) 关键字
2、在SQL查询时,使用()子句指出的是分组后的条件。 (选择1项)
A) WHERE
B) HAVING
C) WHEN
D) GROUP
3、已知关系: 员工(员工号,姓名,部门号,薪水) PK=员工号 FK=部门号
部门(部门号,部门名称,部门经理员工号) PK=部门号(PK指的式主键 FK指的式外键)
现在要查询部门员工的平均工资大于3000的部门名称及平均工资,下面哪两句查询正确:(选择2项)
A) SELECT 部门名称,AVG(薪水) FROM 部门 P,员工 E WHERE E.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000
B) SELECT 部门名称,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门名称 WHERE AVG(薪水)> 3000
C) SELECT 部门名称,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门名称 HAVING AVG(薪水)> 3000
D) SELECT 部门名称,AVG(薪水) FROM 部门 P,员工 E WHERE P.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000
4、要将表userInfo从数据库中删除,用以下的哪个命令?(选择1项)
A) DROP TABLE userInfo
B) TRUNCATE TABLE userInfo
C) DELETE FROM userInfo
D) DROP FROM userInfo
5、在以下哪种情况下使用主键约束而不使用唯一约束:(选择1项)
A) 列的值允许为空值
B) 列有外键引用
C) 列的值不允许为空值
D) 以上都不对
6、在数据库表employee中查找字段empid中以两个数字开头第三个字符是下画线“_”的所有记录。
请选择以下正确的语句:(选择1项)
A) SELECT * FROM employee WHERE empid LIKE '[0-9][0-9]_%'
B) SELECT * FROM employee WHERE empid LIKE '[0-9][0-9]_[%]'
C) SELECT * FROM employee WHERE empid LIKE '[0-9]9[_]%'
D) SELECT * FROM employee WHERE empid LIKE '[0-9][0-9][_]%'
7、函数FLOOR(-41.3)返回 ______。(选择1项)
A) -41
B) -42
C) 41
D) 以上都不是
8、下面哪个函数返回的是满足给定条件的平均值:(选择1项)
A) Max(col_name)
B) Avg(col_name)
C) Sum(col_name)
D) COUNT(col_name)
9、合并多个查询结果集,应使用( )关键字。
E)
F)
10、在SQL查询时,使用WHERE子句指出的是。(选择1项)
A) 查询目标
B) 查询结果
C) 查询条件
E) 查询视图
11、下面有关HAVING子句描述错误的是。(选择1项)
A) HAVING子句必须与GROUPBY子句同时使用,不能单独使用
B) 使用HAVING子句的同时不能使用WHERE子句
C) 使用HAVING子句的同时可以使用WHERE子句
D) 使用HAVING子句的作用是限定分组的条件
12、已知关系: 厂商(厂商号,厂名) PK=厂商号
产品(产品号,颜色,厂商号) PK=产品号,FK=厂商号
A、join
C、into
B、union
D、and 表如下:
厂商 产品
厂商号
C01
C02
C03
厂名
宏达
立仁
广源
产品号
P01
P02
颜色
红
黄
厂商号
C01
C03
若再往产品表中插入如下记录:
I(P03,红,C02) II(P01,蓝,C01)
III(P04,白,C04) IV(P05,黑,null)
能够插入的记录是。(选择1项)
A) I,II,IV
B ) I,III
C ) I,II
D ) I,IV
13、要删除表userInfo中的所有记录,用以下的哪两个命令?(选择2项)
A) DROP TABLE userInfo
B) TRUNCATE TABLE userInfo
C) DELETE FROM userInfo
D) DROP FROM userInfo
14、Delete 语句是_____语句?(选择1项)
A) DQL
B) DML
C) DDL
D) DCL
15、SQL语句中,可以使用( )语句一次插入( )条记录,如果想要一次插入多条记录,必须在语句中使用( )语句。
A、Insert,一,Select B、Insert,二,Update
C、Update,一,Insert D、Delete,三,Select
16、在数据库pubs的表authors中查找以 ean 结尾的所有 4 个字母的作者所在的行。
请选择以下正确的语句:(选择1项)
A) SELECT * FROM authors WHERE au_fname LIKE '_ean'
B) SELECT * FROM authors WHERE au_fname LIKE '%ean'
C) SELECT * FROM authors WHERE au_fname LIKE '[_ean]'
E) SELECT * FROM authors WHERE au_fname LIKE '[%]ean'
17 你是一名电子商务网站的数据库开发人员。你正在建立一个数据库来存储网站的订单信息。这些信息从一个client/server应用程序的client端被输入,每输入一条新订单,就会产生一个唯一的订单号(OrderNumber),并且订单号是以递增的顺序产生的。每天的订单数量大概在10,000条左右。
你建立了一个新表Orders并且向其中加入了一个字段OrderNumber。下一步你该做什么?
A 将OrderNumber的数据类型设置为uniqueidentifier。
B 将OrderNumber的数据类型设置为int,并为其设置IDENTITY属性。
C 将OrderNumber的数据类型设置为int,然后建立一个用户定义的sql语句来找出表中最大的订单号。
D 将OrderNumber的数据类型设置为int。然后建立一个新表NextKey,向其中加入NextOrder(下一张订单)字段, 将NextOrder的数据类型设置为int。建立一个存储过程来获得或更新表NextKey中的值。
18、以下那些是系统数据库:
A SQL Server
B tempdb
C systemdb D model
19、检索序列号(Prono)为空的所有记录( )。
A、
select * from Tab_ProInfor where Prono = ‘’;
B、
select * from Tab_ProInfor where Prono = 0;
C、
select * from Tab_ProInfor where Prono is null;
D、select * from Tab_ProInfor where Prono = ‘0’
20 charindex(‘hy’,’huayuguoji’)返回的结果为
A 0
B 1
C 4
D -1
二 sql语句测试提交sql语句
、学校图书馆借书信息管理系统建立三个表:
学生信息表:student
字段名称
stuID
stuName
major
图书表:book
字段名称
BID
title
author
借书信息表:borrow
字段名称
borrowID
stuID
BID
char(10)
char(10)
char(10)
数据类型 说明
借书编号,主键
学生编号,外键
图书编号,外键
char(10)
char(50)
char(20)
数据类型 说明
图书编号,主键
书名
作者
char(10)
Varchar(10)
Varchar(50)
数据类型 说明
学生编号,主键
学生名称
专业 T_time
B_time
datetime
datetime
借书日期
还书日期
完成以下题目 (利用企业管理器 创建数据库 数据表 增加约束 该步骤略)
1) 利用sql语句录入测试数据 测试数据见下图(为节省时间只提交每个表录入数据的第一条sql语句 即本题共需要提交三条sql语句) (该题6分)
Book表
Borrow表
Student表
2) 查询“计算机”专业学生在“2007-12-15”至“2008-1-8”时间段内借书的学生编号、学生名称、图书编号、图书名称、借出日期;参考查询结果如下图所示:(该题6分)
select ,stuname,,title,t_time from student st,book bk,borrow br
where = and = and t_time>='2007-12-15' and t_time<='2008-1-8' and major='计算机'
3) 查询所有借过图书的学生编号、学生名称、专业;参考查询结果如下图所示:(该题6分)
select stuid,stuname,major from student where stuid in (select stuid from borrow)
4) 查询借过作者为“安意如”的图书的学生姓名、图书名称、借出日期、归还日期;参考查询结果如下图所示:(该题6分)
select stuname,title,t_time,b_time from book bk,student st,borrow br
where = and = and author='安意如'
5) 查询目前借书但未归还图书的学生名称及未还图书数量;参考查询结果如下图所示:(该题6分)
select stuname, count(*) from student st,borrow br where = and b_time is null
group by ,stuname
6) 利用sql语句删除已经还书的的信息(该题5分)
delete from borrow where B_time is not null
7) 利用sql语句把五月的专业更改为”数学应用” (该题5分)
update student set major='数学应用' where stuname='五月' 三sql语句测试
根据以下对表的描述要求完成SQL语句:
选课表(Register)
C_ID S_ID T_ID R_Date R_score
部门表(depD_ID 列名 R_ID D_N类型 varchar varchar Varchar varchar datetime numeric(5,2) varchar var意义 选课编课程编学生编教师编选课时成绩
号
号 号 号 间
学生表(Student)
T_Mail S_ID S_Name
varchar
部门编部门号
教师表(Teacher)
T_Name D_ID
课程列名 T_ID S_Mail C_I类型 varchar varchar Varchar varchar varchar varchar var学生邮课箱
意义 教师编教师姓部门号 教师邮学生编学生姓名
号
1、
名 箱 号 号
根据上面表的定义,写出创建教师(teacher)和部门表(dept)的SQL语句,要求:TID定义为主键,DID定义为外键。
Create table dept
(
did varchar(15) primary key,
Dname varchar(15)
)
Create table teacher
(tid varchar(15) primary key,
tname varchar(15),
did varchar(15) references dept(did),
,tmail varchar(15)
)
2、 向选课表添加一行数据:
选课编号 课程编号 学生编号 教师编号 选课时间 成绩 HYR0001 HYC001 HYS001 HYT001 2008/6/12 76
Insert into Register
Values(‘HYR0001’,’HYC001’,’HYS001’,’HYT001’,’2008/6/12’,76)
3、
4、
把所有HYD01部门的老师的邮箱添加前缀“Mailto”。
列出所有教师的姓名和部门名
Update teacher set tmail=’Mailto’+tmail where did=’HYD01’
Select , from
Teacher t join dept d
On =
5、 列出每个学生的姓名和其平均成绩
Select ,avg()
From student s join register r
On =
Group by
6、 列出没有带课的老师的名字
Select tname from teacher
Where tid not in
(select tid from register)
7、 列出教学成绩最好(老师的各科总平均成绩高)的老师的名字
Select tname from teacher
Where tid = (Select top 1 tid from register group by tid order by avg(R_score) desc)
8、 列出所有学生姓名,授课教师姓名,课程名称,选课时间,成绩,并包含没有参加选课的学生姓名。
Select ,,,,
From register r
Join teacher t on =
Join course c on =
Right outer Join student s on =
(注意sname,tanme,cname属于哪个表别忘了加上)
9、
列出高于学科平均成绩的学生编号和其成绩
Select sid,rscore
from register outers
where rscore>
(select avg(rscore) from register inners where =) 10 删除姓张的学员信息
delete from student where S_Name like ‘张%’
发布者:admin,转转请注明出处:http://www.yc00.com/web/1689247592a225665.html
评论列表(0条)