‘壹’ 谁有sql server2000 模拟试题啊
《SQL SERVER2000》模拟试题
选择题:
1、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)
A、只存在一对多的实体关系,以图形方式来表示。
B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C、能体现一对多、多对多的关系,但不能体现一对一的关系。
D、关系模型数据库是数据库发展的最初阶段。
2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。
A、Windows身份验证 B、SQL Server 身份验证
C、以超级用户身份登录时 D、其他方式登录时
3、关系数据库中,主键是(___),主键的建立有(___)种方法,当运用Transact-SQL语句创建主键时,可以是(__)。
⑴ A、为标识表中唯一的实体
B、创建唯一的索引,允许空值
C、只允许以表中第一字段建立
D、允许有多个主键的
⑵ A、一 B、二 C、三 D、四
⑶ A、create table table1
(column1 char(13) not null primary,
column2 int not) on primary;
B、alter table table1 with notcheck add
constraint [PK_table1] primary key nonclustered
( column1) on primary;
C、alter table table1 column1 primary key ;
4、视图是一种常用的数据对象,它是提供(___)数据的另一种途径,可以简化数据库操作,当使用多个数据表来建立视图时,不允许在该语句中包括(___)等关键字。
⑴ A、查看,存放 B、查看,集中
C、插入,保存 D、删除,更新
⑵ A、ORDER BY,COMPUTE
B、ORDER BY,COMPUTE,COMPUTR BY
C、ORDER BY,COMPUTE BY,GROUP BY
D、GROUP BY,COMPUTE BY
5、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但至少包括的部分(__),使用关键字(__)可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(___),如果在SELECT语句中使用集合函数时,一定在后面使用(__)。
⑴ A、SELECT,INTO B、SELECT,FROM
C、SELECT,GROUP D、仅SELECT
⑵ A、DISTINCT B、UNION
C、ALL C、TOP
⑶ A、JOIN B、UNION
C、INTO C、LIKE
⑷ A、GROUP BY B、COMPUTE BY
C、HAVING D、COMPUTE
1、 在WINDOWS98操作系统下,2、 只能安装SQL Server2000( )
A、企业版 B、标准版 C、个人版 D、测试版
3、 要连接到SQL Server服4、 务器,5、 有两种连接认证方式,6、 其中在(___)方式下,7、 需要客户端应用程序连接时提供登录需要的用户标8、 识和密码。
A、Windows身份验证 B、SQL Server 身份验证
C、以超级用户身份登录时 D、其他方式登录时
9、 利用查询分析器,10、 能( )。
A、直接执行SQL语句 B、提交SQL语句给服务器执行
C、作为企业管理器使用 D、作为服务管理器使用
11、 事务日志文件的默认扩展名12、 是( )。
A、MDF B、NDF C、LDF D、DBF
13、 通过使用文件组,14、 可以( )。
A、提高存取数据的效率。 B、提高数据库备份与恢复的效率
C、简化数据库的维护 D、ABC都可以。
15、 SQL Server的主数据库是( )。
A、MASTER B、TEMPDB C、MODEL D、MSDB
16、 数据库的容量,17、 ( )。
A、只能指定固定的大小。 B、最小为10M
C、最大100M。 D、可以设置为自动增长
18、 日期时间型数据类型(datetime)的长度是( )。
A、2 B、4 C、8 D、16
19、 表在数据库中是一个非常重要的数据对象,20、 它是用来(__)各种数据内容的,21、 数据库创建后就可以创建表了,22、 创建表可以用(__)等方法来创建。
⑴ A、显示 B、查询 C、存放 D、检索
⑵ A、企业管理器 B、查询分析器
C、OSQL D、企业管理器和CREATE TABLE语句
23、 为数据表创建索引的目的是(__),24、 可以在创建表时用( _)来创建唯一索引。
⑴ A、提高查询的检索性能 B、创建唯一索引
C、创建主键 D、归类
⑵ A、设置主键约束,设置唯一约束 B、Create table,Create index
C、设置主键约束,Create index D、以上都可以
25、 在T-SQL语法中,26、 用来插入和更新数据的命令是(___)。
A、INSERT,UPDATE B、UPDATE,INSERT
C、DELETE,UPDATE D、CREATE,INSERT INTO
27、 主键约束用来强制数据的( )完整性。
A、域 B、实体 C、参照 D、ABC都可以
28、 在SQL Server服29、 务器上,30、 存储过程是一组预先定义并(__)的T-SQL语句。
A、保存 B、编译 C、解释 D、编写
31、 替代触发器(instead of)是在触发触发器的修改操作( )执行。
A、执行后 B、停止执行时 C、同时 D、之前
32、 聚合函数的返回值是( )。
A、一个标量值 B、一组值 C、表达式 D、表
填空题:
33、 Windows NT 授权认证模式只适用于________________________平台,对于Windows95/98操作系统下的SQL Server系统将不适用。
36、 创建好的规则必须__________到列或用户自定义的数据类型上才能起作用.
37、 用SELECT进行模糊查询时,可以使用________运算符,但要在条件值中使用______等通配符来配合查询。并且模糊查询只能针对字段 类型是LIKE 子句_________的查询。
41、 计算字段的累加和的函数是:_______, 统计项目数的函数是:________。
43、 服务器网络实用工具的目的是创建__________________________和更改默认的网络连接协议。
45、 视图是从一个或多个表中导出的虚拟表,其内容由____________定义生成。
47、 通过外键约束可以为相关联的两个表建立联系,实现数据的__________完整性。
49、 帐号SA是____________帐号,它对SQL Server和其它应用具有全局的观察力。
51、 SQL Server2000是微软开发的高性能关系数据库管理系统,它与____________紧密集成,这种特殊的结合使SQL Server2000可以充分 地利用操作系统的优势。
54、 要访问SQL Server数据库,都必须经过安全检查。SQL Server2000使用两层安全机制确认用户的有效性, __________验证 和 _____________验证两个阶段。
57、 SQL Server中索引类型包括的类型分别是唯一索引,主键索引______________和聚集索引。
58、 服务管理器可用于_________、___________ 、_________SQL Server2000服务器上的SQL Server服务等操作。
62、 SQL Server2000是微软开发的高性能关系数据库管理系统,它与______________紧密集成,这种特殊的结合使SQL Server2000可以充 分地利用操作系统的优势。
65、 数据库存储在磁盘的物 理文件有主数据文件_____________、辅助数据文件和 事务日志文件___________。
66、 创建数据库时,默认是将数据文件存放在primary_____________文件组中。
68、 整形数据有四种类型:________、______、______与 _____ 。
69、 数据完整性可分为 实体 ________完整性、域完整性、参照完整性和用户自定义完整性。
70、 通过外键约束可以为相关联的两个表建立联系,实现数据的参照____________完整性。
72、 视图是从一个或多个表中导出的虚拟表,其内容由选择查询来____________定义生成。
74、 删除表命令是:_____________。
76、 触发器可以实现比CHECK约束更为复杂的________________________。
78、 触发触发器的三个操作是___________,________,_________,
79、 如果一个批处理中包含了一个语法错误,则整个批处理不能成功地____________。
82、 事务可以用于确保数据能够正确地被修改,事务有四个特性,统称为_________特性。
判断题(10分)
1、( )在CREATE INDEX语句中,使用CLUSTERED来建立聚集索引。
2、( )在 Transact-SQL 语句中,对不符合所有标识符规则的标识符必须进行分隔。
3、( )在SQL SERVER中,替代触发器的执行是在数据的插入、更新或删除之前执行的。
4、( )每个存储过程向调用方返回一个整数返回代码。这个数据表示存储过程执行的情况。
5、( )因为通过视图可以插入、修改或删除数据,因此视图也是一个虚实表,SQL SERVER将它保存在syscommens系统表中。
6、( )用户定义的内联表值函数实质上就是一个参数化的视图。
7 ( )当登录到WINDOWS的用户与SQL Server联接时,用户不用提供SQL Server帐号,这种认证模式就是WINDOWS认证机制。
8 ( )用企业管理器连接到服务器后,看到的对象都是存放在磁盘上的物理文件。
9 ( )当对数据库对象写操作时,数据只能写入组内的一个文件中。
10( )可以在企业管理器中修改数据库的名称。
11( )在 T-SQL 语句的WHERE子句中,完全可以用IN子查询来代替OR逻辑表达式。
12( )通配符“_”表示某单个字符。
13( )域完整性又称为引用完整性。
14( )默认值绑定到列上后,该列上的数据将固定不变。
15( )一个表上只能建立一个聚集索引。
16( )共享锁不能防止其它人修改数据。
操作编码题
现要为学校建立一个数据库,设学校环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。 . 现要建立关于系、学生、班级的数据库,关系模式为:
学生 STUDENT (学号,姓名,性别,年龄,班号)
班 CLASS (班号,专业名,系名,入学年份)
系 DEPARTMENT (系号,系名)
试用 SQL 语言完成以下功能:
建表,在定义中要求声明:
( 1 )每个表的主外码。
( 2 )学生的年龄介于 15 到 40 岁之间。
( 3 )学生姓名不能为空。
( 4 )只有班里没有学生的时候,才能删除该班级。
2 插入如下数据
CLASS (
101 ,软件,计算机, 1995 ; 102 ,微电子,计算机, 1996 ;
111 ,无机化学,化学, 1995 ; 112 ,高分子化学,化学, 1996 ;
121 ,统计数学,数学, 1995 ; 131 ,现代语言,中文, 1996 ;
141 ,国际贸易,经济, 1997 ; 142 ,国际金融,经济, 1996 ;
)
STUDENT (
8101 ,张三, 18 , 101 ; 8102 ,钱四, 16 , 121 ;
8103 ,王玲, 17 , 131 ; 8105 ,李飞, 19 , 102 ;
8109 ,赵四, 18 , 141 ; 8110 ,李可, 20 , 142
8201 ,张飞, 18 , 111 ; 8302 ,周瑜, 16 , 112 ;
8203 ,王亮, 17 , 111 ; 8305 ,董庆, 19 , 102 ;
8409 ,赵龙, 18 , 101 ; 8510 ,李丽, 20 , 142 )
3 完成以下查询功能
( 1 )找出所有姓李的学生,并按其年龄由小到大排序。
( 2 )列出所有开设超过两个专业的系的名字。
( 3 )列出学生人数大于等于 2 的系的编号和名称。
4.在班级表建立一个触发器,当某班号的记录被删除时,学生表中对应班号的记录自动删除
5.建立一个能返回某班学生人数的函数
‘贰’ sql面试题
1.
select
s.title,
count(p.id)
from
书表
s
left
join
评论
p
on
s.id=p.书表中的id
group
by
s.title
(注意:左外连接的作用是将评价数为0的书显示出来.count(p.id)和count(*)的区别是count(p.id)不计入p.id为null的行)
2.
select
top
1
s.title,
count(p.id)
from
书表
s
left
join
评论
p
on
s.id=p.书表中的id
group
by
s.title
order
by
2
desc
(以第2列倒序排序,取第1行)
‘叁’ sql server 试题
A,应该是在视图上更新,视图只可针对单一表处理,
INSTEAD OF 触发器
可以对视图创建 INSTEAD OF 触发器,以使视图可更新。将执行 INSTEAD OF 触发器,而不是执行对其定义了触发器的数据修改语句
B,是针对重新启动因服务器故障而中断的情况
B,指定为大容量加载操作持续时间获取一个表级锁
A,通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少
--参考答案
ABBA
‘肆’ sql面试题,请大神解答,急!!!
第一题,最高的10-20。
1234select*from(selectcolD,colE,dense_rank()over(orderbycolGdesc)asrkfromtableb)whererkbetween10and20--当然面试的话这里可以注明dense_rank和rank区别等等。
第二题,2楼写的就可以了
第三题,注意题目是人数之和
12345selectcount(*)ascntfromtableBwherecolAin(=传入idconnectbypriorcolA=colB)
第四题
--测试数据
withtableAas(select1ascolA,0ascolB,'北京',0ascolB,'上海'fromal),tableBas(select1ascolD,'人员1'ascolE,1ascolA,2000ascolG,0ascolHfromalunionallselect2,'人员2',1,2000,0fromalunionallselect3,'人员3',1,2000,0fromalunionallselect4,'人员4',1,2000,0fromalunionallselect5,'人员5',1,2000,1fromalunionallselect6,'人员6',2,2000,1fromalunionallselect7,'人员7',1,2000,1fromal)--查询sqlselectdecode(t.colH,0,'女','男')asgender,max(decode(t.colC,'北京',t.cnt,0))as北京,max(decode(t.colC,'上海',t.cnt,0))as上海from(selecta.colC,b.colH,count(*).colA=b.colAgroupbycolC,colH)tgroupbyt.colH
这里可以解释下本sql的思路:--首先查出每个地区不同性别的人数,在行转列(由于题目很明显告诉你固定数据)
‘伍’ SQL测试题(注:最佳答案必须能在MySQL下运行)
/*
闲着没事,瞅瞅网络上的问题,今天天晚了,先解决一个,另一个明儿个再说了!
第二道题也算已经搞定了!
环境 : mysql Ver 14.12 Distrib 5.0.45, for Win32 (ia32)
参考 :
exist与in 的区别
http://blog.csdn.net/change888/archive/2008/03/31/2232778.aspx
*/
/*********************************问题 1 **************************************/
drop table if exists s;
create table if not exists s (s varchar(32), sn varchar(32), sd varchar(32),
sa int);
insert into s values ('s1', '朱', '开发本部', 23);
insert into s values ('s2', '牛', '人事部', 25);
insert into s values ('s3', '杨', '财务部', 26);
insert into s values ('s4', '马', '开发本部', 22);
insert into s values ('s5', '吕', '人事部', 27);
insert into s values ('s6', '于', '开发本部', 28);
insert into s values ('s7', '侯', '开发本部', 28);
drop table if exists c;
create table if not exists c (c varchar(32), cn varchar(32));
insert into c values ('c1', '软件工程');
insert into c values ('c2', '计算机技术与科学');
insert into c values ('c3', '车辆工程');
drop table if exists sc;
create table if not exists sc (s varchar(32), c varchar(32));
insert into sc values ('s1', 'c1');
insert into sc values ('s1', 'c2');
insert into sc values ('s1', 'c3');
insert into sc values ('s2', 'c1');
insert into sc values ('s2', 'c3');
insert into sc values ('s3', 'c2');
insert into sc values ('s4', 'c2');
insert into sc values ('s4', 'c3');
insert into sc values ('s5', 'c1');
insert into sc values ('s6', 'c3');
/* 1. 查询选修课程名称为 “软件工程” 的学员学号和姓名 */
select s.s '学号', s.sn '姓名' from s where s.s in
(select sc.s from sc where sc.c in
(select c.c from c where c.cn = '软件工程'));
/* 2. 查询选修课程编号为 “C2” 的学员姓名和所属单位 */
select s.sn '姓名', s.sd '所属单位' from s where s.s in
(select sc.s from sc where sc.c = 'C2');
/* 3. 查询选修课程编号 不 为 “C2” 的学员姓名和所属单位 */
select s.sn '姓名', s.sd '所属单位' from s where
s.s not in (select sc.s from sc where sc.c = 'C2')
and
s.s in (select sc.s from sc);
/* 4. 查询选修全部课程的学员姓名和所属单位 */
select s.sn '姓名', s.sd '所属单位' from s where
(select count(DISTINCT sc.c) from sc where sc.s = s.s)
=
(select count(DISTINCT c.c) from c );
/* 5. 查询选修了课程的学员人数 */
select count(DISTINCT sc.s) '人数' from sc;
/* 6. 查询选修课程 >= 2 门的学员学号和所属单位 (不得不用 CASE 语句了)*/
select s.sn '姓名', s.sd '所属单位' from s where s.s in
(select CASE WHEN count(DISTINCT sc.c) >=2 THEN sc.s END from sc group by sc.s );
/* 运行结果
------------------------------------1
+------+------+
| 学号 | 姓名 |
+------+------+
| s1 | 朱 |
| s2 | 牛 |
| s5 | 吕 |
+------+------+
------------------------------------2
+------+----------+
| 姓名 | 所属单位 |
+------+----------+
| 朱 | 开发本部 |
| 杨 | 财务部 |
| 马 | 开发本部 |
+------+----------+
------------------------------------3
+------+----------+
| 姓名 | 所属单位 |
+------+----------+
| 牛 | 人事部 |
| 吕 | 人事部 |
| 于 | 开发本部 |
+------+----------+
------------------------------------4
+------+----------+
| 姓名 | 所属单位 |
+------+----------+
| 朱 | 开发本部 |
+------+----------+
------------------------------------5
+------+
| 人数 |
+------+
| 6 |
+------+
------------------------------------6
+------+----------+
| 姓名 | 所属单位 |
+------+----------+
| 朱 | 开发本部 |
| 牛 | 人事部 |
| 马 | 开发本部 |
+------+----------+
*/
/*********************************问题 2 **************************************/
drop table if exists s ;
create table if not exists s ( sno varchar(32), sname varchar(32));
insert into s values ('s1', '朱');
insert into s values ('s2', '牛');
insert into s values ('s3', '杨');
insert into s values ('s4', '马');
insert into s values ('s5', '吕');
insert into s values ('s6', '于');
insert into s values ('s7', '侯');
drop table if exists c;
create table if not exists c ( cno varchar(32), cname varchar(32),
cteacher varchar(32));
insert into c values ('c1', '数学', '张');
insert into c values ('c2', '日语', '李'); /*假设李老师同时教授日语和英语*/
insert into c values ('c3', '英语', '李');
drop table if exists sc;
create table if not exists sc (sno varchar(32), cno varchar(32),
scgrade double);
insert into sc values ('s1', 'c1', 75);
insert into sc values ('s1', 'c2', 70);
insert into sc values ('s1', 'c3', 80);
insert into sc values ('s2', 'c1', 50);
insert into sc values ('s2', 'c3', 40);
insert into sc values ('s3', 'c1', 50);
insert into sc values ('s3', 'c2', 60);
insert into sc values ('s4', 'c1', 90);
insert into sc values ('s4', 'c2', 40);
insert into sc values ('s4', 'c3', 20);
insert into sc values ('s5', 'c1', 80);
insert into sc values ('s6', 'c1', 85);
/* 1. 没有 选 修过“李”老师讲授课程的所有学生姓名 */
select s.sname '姓名' from s where s.sno not in
(select sc.sno from sc where sc.cno in
(select c.cno from c where c.cteacher = '李'));
/* 2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩 */
select s.sname '姓名', AVG(sc.scgrade) '平均成绩' from s, sc
where s.sno = sc.sno
and
(select count(sc.sno) from sc where sc.sno = s.sno
and sc.scgrade < 60 ) >= 2
group by s.sno;
/* 3. 列出既学过“C1”号课程,又学过“C2”号课程的所有学生姓名 */
select s.sname '姓名' from s where s.sno in
(select t1.sno from sc t1, sc t2
where t1.sno = t2.sno and t1.cno = 'c1' and t2.cno = 'c2');
/*或者*/
select s.sname '姓名' from s where s.sno in
(select sc.sno from sc where sc.cno = 'c1' and sc.sno in
(select t1.sno from sc t1 where t1.cno = 'c2'));
/* 4. 列出“C1”号课成绩比“C2”号同学该门课成绩高的所有学生的学号 */
select t1.sno '学号' from sc t1, sc t2
where t1.sno = t2.sno and t1.cno = 'c1'
and t2.cno = 'c2' and t1.scgrade > t2.scgrade;
/* 5. 列出“C1”成绩比“C2”成绩高的学生的学号及其“C1”和“C2”的成绩 */
select t1.sno '学号', t1.scgrade 'C1成绩', t2.scgrade 'C2成绩' from sc t1, sc t2
where t1.sno = t2.sno and t1.cno = 'c1'
and t2.cno = 'c2' and t1.scgrade > t2.scgrade;
/* 运行结果
------------------------------------1
+------+
| 姓名 |
+------+
| 吕 |
| 于 |
| 侯 |
+------+
------------------------------------2
+------+----------+
| 姓名 | 平均成绩 |
+------+----------+
| 牛 | 45 |
| 马 | 50 |
+------+----------+
------------------------------------3
+------+
| 姓名 |
+------+
| 朱 |
| 杨 |
| 马 |
+------+
------------------------------------4
+------+
| 学号 |
+------+
| s1 |
| s4 |
+------+
------------------------------------5
+------+--------+--------+
| 学号 | C1成绩 | C2成绩 |
+------+--------+--------+
| s1 | 75 | 70 |
| s4 | 90 | 40 |
+------+--------+--------+
*/
‘陆’ 一道软件测试面试题中的sql题目,求解
1、select class.c_name,count(student.sex) as '女生人数',avg(student.score) as '女生平均分' from student,class,student_class where student.s_id=student_class.c_id and class.c_id=student_class.s_id and student.sex='女' group by class.c_name ;
2、select class.c_name,count(case when student.sex='女' then student.sex end) as '女生人数',avg(case when student.sex='女' then student.score else 0 end) as '女生平均分' from student,class,student_class where student.s_id=student_class.c_id and class.c_id=student_class.s_id group by class.c_name ;
‘柒’ 求SQL选择题,只要 索引,试图游标,存储过程 触发器 事务处理与并发控制.
今天的数据库试题(满意不?): 一,简答题1、简述SQL Server 数据库系统的安全性四个层次答案: 2,简述视图概念以及视图作用答案: 3,简述索引的概念,分类,作用以及用法答案: 4. 请阐述事务的概念,作用以及特点?答案: 二.编程一.已知学生数据库中存在这样的三张表,学生表:学号,姓名,性别,年龄,系别Student(Sno,Sname,Ssex,Sage,Sdept),课程表:课程编号,课程名称,授课老师Course(Cno,Cname,Cteacher), 成绩表:学号,课程号,成绩SC(Sno,Cno,Grade) 按要求完成下列操作:1. 查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列 2.查询选修了课程名为“信息系统”的学生学号和姓名 3.查询每个学生的学号、姓名、选修的课程名及成绩 4.利用查询创建一张新表student1,把跟’刘晨’在同一个系学习的学生的基本信息放到表student1中 5.求各个课程号及相应的选课人数 6.查询选修了3门以上课程的学生学号 7. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号 8. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩 9. 找出没有选修过“李明”老师讲授课程的所有学生姓名 10. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩 11. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名 12.这时,管理员要在学生表中修改某个学生的学号,这时就希望修改了学生表中的学号,成绩表中的该学号也应该变成在学生表中修改后的学号,不许使用两个UPDATE,而希望用触发器实现,即修改了学生表中的学号,成绩表中对应的学号也作一致变化,应如何操作? 二.已知学生数据库中存放了这样的两张表,如下所示,一张为毕业生信息表,记录毕业生的一些基本信息,一张为学生缴费表,记录了学生的缴费信息。由于学生毕业,我们要从学生信息表中把毕业生的记录删除,但是如果这个学生欠费的话,则不允许删除这个学生的记录,要求:删除毕业生信息表中的哪条记录,必须通过存储过程实现,并带有输入参数,而判断该学生是否欠费,必须使用触发器实现。(提示:用带输入参数的存储过程完成删除操作,用触发器判断是否欠费,如果欠费,则回滚事务)毕业生信息表学号 姓名 性别 地址 联系方式001 吴迪 男 淮南市潘集镇赵前村18号 0554-6840157002 潘倩萍 女 芜湖市繁昌县孙村镇65号 0553-4855986003 余建星 男 黄山市歙县北岸镇52号 0559-7852013004 贺艳 女 蚌端口市长淮卫镇淮上村85号 0552-6589421学生缴费表学号 姓名 已交费用 欠费001 吴迪 5000 400002 潘倩萍 5400 0003 余建星 4000 1400004 贺艳 3000 2400 三.现要为学校建立一个数据库,设学校环境如下:一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。 . 现要建立关于系、学生、班级的数据库,关系模式为:学生 STUDENT (学号,姓名,性别,年龄,班号)班 CLASS (班号,专业名,系名,入学年份)系 DEPARTMENT (系号,系名)试用 SQL 语言完成以下功能:1、建表,在定义中要求声明:( 1 )每个表的主键。( 2 )学生的年龄介于 15 到 40 岁之间。( 3 )学生姓名不能为空。2、插入如下数据 CLASS ( 101 ,软件,计算机, 1995 ; 102 ,微电子,计算机, 1996 ; 111 ,无机化学,化学, 1995 ; 112 ,高分子化学,化学, 1996 ; 121 ,统计数学,数学, 1995 ; 131 ,现代语言,中文, 1996 ; 141 ,国际贸易,经济, 1997 ; 142 ,国际金融,经济, 1996 ; )STUDENT ( 8101 ,张三,男, 18 , 101 ; 8102 ,钱四,女, 16 , 121 ; 8103 ,王玲,女, 17 , 131 ; 8105 ,李飞,男, 19 , 102 ; 8109 ,赵四,女, 18 , 141 ; 8110 ,李可,女, 20 , 142;DEPARTMENT(01,中文; 02,计算机;03,数学; 04,化学;05,经济;) 3 完成以下查询功能( 1 )找出所有姓李的学生,并按其年龄由小到大排序。( 2 )列出所有开设超过两个专业的系的名字。( 3 )列出学生的基本信息、入学年份、所在系的名称。( 4 )列出年龄在19~20之间的学生的姓名、系名和年龄 4.创建一个视图,包含学生的姓名,性别,班号和系号。 5.在班级表建立一个触发器,当某班号的记录被删除时,学生表中对应班号的学生记录自动删除。 6. 用查询分析器创建一个学生数据库(student),将数据文件和日志文件都存放在D盘自已学号的目录下。其中数据文件和日志文件初始大小都为3MB,自动增长率都为10%。 四,假设供应销售数据库有供应商表s,零件表p,工程项目表j,供销情况表spj关系,希望建立四个索引,其中,供应商s中sno按升序建立索引,零件p中pno 按升序建立索引,工程项目j中jno按升序建立索引,供销情况 spj中sno按升序,pno按降序,jno按升序建立索引
‘捌’ 谁来帮我解决这些SQL SERVER测试题
6 ad
7 ac
8 b 这是sql server里面的取前面记录,一般会用来分页
9 d
10 c
‘玖’ 求软件测试面试题中的sql题目
2.查询所有班级的名称,和所有版中女生人数和女生的平均分。 1. select * from student where score>80 and s_id in (select sid from student_,fuidoj
‘拾’ 高分悬赏几道计算机SQL数据库的题!做出来了先支付100分,要是满意的话,在加赏50~
1. 查询雇员(employee)的姓和名
Select substring(username,1,1) as 姓 from employee
Select substring(username,2,2) as 名 from employee
2. 查询雇员的姓名
Select username from employee
3. 查询雇员数
Select count(*) from employee
4. 查询雇员的姓名和职务
Select username,,ty from employee
5. 查询雇员的工龄
Select year(getdate())-开始工作日期 as 工龄 from employee
任务2:条件查询
1. 查询雇员(employee)从事"Sales Representative"职务的有哪些人
Select * from employee where ty=’ Sales Representative’
2. 查询工龄超过15年的雇员
Select * from employee where cast( (year(getdate())-开始工作日期) as int)>=15
3. 查询姓以a开头的雇员
Select * from employee where username like ‘a%’
4. 查询姓的开头字母在m以后的雇员
Select * from employee where cast((substring(username,1,1) as varchar)>=’m’
5. 认为hire_date是雇员生日,查询巨蟹座的雇员
Select * from employee where birthday between ‘6-22 ‘ and ‘7-22’
任务3:联合查询
1. 查询雇员和雇员职位
Select a.id,b.ty from employee, as a,jobs as b
2. 查询雇员、雇员职位和雇员所在出版社
Select a.id,b.ty, b.publishing from employee as a,jobs as b on a.id=b.id
3. 查询雇员、雇员工资、雇员离本职位最高工资的差值
select a. ID,a.username,a.[雇员工资],b.[最高工资]-a.[雇员工资] as [差值] from employee a,jobs b where a.[职位]=b.[职位]