sql期末试题
⑴ 4道sql期末考题求助,高分!
1,
use finalexamDB
go
create schema students
go
create type students.studentsID char(7) not null
2,
create trigger del_dept_trigger on dept after delete
as
begin
update emp
set deptno=null
from emp a inner join deleted b
on a.deptno=b.deptno
insert into historydept select * from deleted
end
3,
use adventureworks
go
exec sp_admpdevice @devtype='disk',@logicalname='backupfull',@physicalname='C:\backup\db.bak'
go
backup database adventureworks to backupfull with init
4,
create login [studentlogin] with password='pa$$w0rd',default_database=adventureworks
⑵ SQL期末考题。帮帮忙。100分。
查询题:
1).select * from EMP where DEPTNO='20';
2).select * from EMP where ENAME like 'MA%';
3).select * from EMP order by JOB;
4).select b.DNAME,COUNT(a.*) as num
from EMP a left join DEPT b on a.DEPTNO=b.DEPTNO
group by b.DNAME
5).select * from EMP where SAL>(select max(SAL) as SAL from EMP where DEPTNO='20');
程序题:
1).函数:
CREATE FUNCTION [SumN] (@n INT)
RETURNS INT AS
BEGIN
declare @out INT,@i int
set @out=0
set @i = 1
while @i<=@n
begin
set @out = @out+@i
set @i = @i + 1
end
return (@out)
END
2).存储过程:
CREATE PROCEDURE [emp_info] (@n DECIMAL(2))
AS
select * from EMP where DEPTNO=@n
视图和索引
1).CREATE VIEW [emp10_view]
AS
select * from EMP where DEPTNO='10'
2).ALTER TABLE [EMP] ADD CONSTRAINT [IX_Empno] PRIMARY KEY CLUSTERED
(
[empno] ASC
)
⑶ SQL期末考试题,来个大神帮解答一下
考试啊,好久远的事情了 好忧伤 ∞这个是什么意思都忘记了
R÷S 是Except 语法把
⑷ 求sql期末考试试题
1.请把1-7号语句块组合好,在SQL SERVER 2000中运行,成功创建好数据库studentcourse,以及它的3个表S,C,SC,并插入相应数据。 2. 查询选修了“J0401”课程的学生学号。 3. 查询李丽同学是哪各系的。 4. 查询陈小红同学的所有成绩之和。 select count(*)*avg(成绩)AS 总成绩from SC,S where SC.学号=S.学号and S.姓名='陈小红' 5. 查询课程号‘C02’的平均成绩。 select 课程号,avg(成绩) AS 平均成绩from SC where 课程号='C02' GROUP BY 课程号 6.查询选课超过6门的学生的姓名 select 姓名from SC,S where SC.学号=S.学号 GROUP BY 姓名 having count(课程号)>6 7. 将所有课程的姓名课程号,课程名,任课教师定义为一个视图。 create view dbo.new1 as select 姓名,SC.课程号,课程名,教师as 任课教师from S,SC,C WHERE S.学号=SC.学号and C.课程号=SC.课程号 8.定义为一个视图,显示所有课程的课程号,选课人数和平均成绩。 9. 建立一个自定义标量函数,要求能够显示某门课程的最高成绩。 CREATE FUNCTION CJ(@C_Cname Char(20)) returns INT as begin declare @Max_CJ int set @Max_CJ= ( select max(SC.成绩) from SC,C where SC.课程号=C.课程号 and 课程名=@C_Cname group by SC.课程号 ) RETURN @Max_CJ end 10. 编写一个存储过程,如果有学生成绩100分,则返回1,否则返回0,通过执行存储过程来查看成绩100分的学生。 (考点:简单存储过程创建)
⑸ sql期末考试试题及答案
查询题:1).select*fromEMPwhereDEPTNO='20';2).select*fromEMPwhereENAMElike'MA%';3).select*fromEMPorderbyJOB;4).selectb.DNAME,COUNT(a.*)asnumfromEMPaleftjoinDEPTbona.DEPTNO=b.DEPTNOgroupbyb.DNAME5).select*fromEMPwhereSAL>(selectmax(SAL)asSALfromEMPwhereDEPTNO='20');程序题:1).函数:CREATEFUNCTION[SumN](@nINT)RETURNSINTASBEGINdeclare@outINT,@iintset@out=0set@i=1while@i<=@nbeginset@out=@out+@iset@i=@i+1endreturn(@out)END2).存储过程:CREATEPROCEDURE[emp_info](@nDECIMAL(2))ASselect*fromEMPwhereDEPTNO=@n视图和索引1).CREATEVIEW[emp10_view]ASselect*fromEMPwhereDEPTNO='10'2).ALTERTABLE[EMP]ADDCONSTRAINT[IX_Empno]PRIMARYKEYCLUSTERED([empno]ASC)
⑹ sql 期末考试题
1、建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、 所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。
其值是唯一的,并不是说是主键,应该用关键字UNIQUE
CREATE TABLE Student(
Sno SMALLINT NOT NULL UNIQUE,
Sname CHAR(8),
Ssex CHAR(1),
Sage SMALLINT,
Sdept CHAR(20))
2、查询全体学生的详细记录
SELECT * FROM Student
3、查询年龄在20至23岁之间的学生的姓名、系别、和年龄
SELECT Sname, Sdept, Sage
FROM Student
WHERE Sage BETWEEN 20 AND 23
4、计算1号课程的学生平均成绩
SELECT AVG(Grade) FROM SC WHERE Cno = 1
5、将计算机科学系全体学生的成绩置零
UPDATE SC
SET grade = 0
WHERE Sno IN (SELECT Sno FROM Student WHERE Sdept = '计算机科学系')
⑺ SQL Server期末考试试题
3、查询出课程号为‘002’,分数最高的学生学号
三、查询设计
1、SELECT学号,姓名FROM学生
WHERE班级='软件041'
2、SELECT*FROM课程
WHERE课程名称LIKE'%语言%'
3、SELECTD.学号,D.姓名,D.班级
FROM(
SELECTTOP5学号
FROM选课A
LEFTJOIN课程B
ONA.课程号=B.课程号
WHEREB.课程名称='C语言'
ORDERBYA.成绩DESC
)C
LEFTJOIN学生D
ONC.学号=D.学号
4、SELECT班级,COUNT(班级)
FROM学生
GROUPBY班级
5、DECLARE@zhangsanchengjiFLOAT
SELECT@zhangsanchengji=A.成绩
FROM选课A
LEFTJOIN课程B
ONA.课程号=B.课程号
LEFTJOIN学生C
ONA.学号=C.学号
WHEREB.课程名称='计算机应用基础'
ANDA.姓名='张三'
SELECTD.学号,D.姓名
FROM(
SELECTA.学号,A.成绩
FROM选课A
LEFTJOIN课程B
ONA.课程号=B.课程号
WHEREB.课程名称='计算机应用基础'
)C
LEFTJOIN学生D
ONC.学号=D.学号
WHERE成绩>@zhangsanchengji
五、操作题,这里自己查相关的操作吧,不好描述,sqlserver软件操作起来还是挺方便的。
3、A
break:是跳出本次循环,也就是当@n = 1,循环终止并跳出begin-end执行外部的代码,此时@n = 1。
continue:重新开始循环,但是continue后的代码不执行的,这里直到@n = 0时。
return:过程中无条件退出,后续的所有代码都不执行,所以不会有输出。
⑻ SQL期末考试题,来个大神帮解答一下
select fph from mz_brsf
whereje > 200;
2.select sum(je) from mz_brsf
where sfsj >= '2012-01-01'
and sfsj < '2012-02-01';
3.delete from mz_bfsf
where cfh is null;
4.update mz_bfsf
set substr(sfsj,1,4) =2013
where ks ='内科' ;
5. select ks, sum(je) from mz_bfsf
group by ks
having sum(je) >500;
6.select top 2 ys,sum(je)
from mz_bfsf
group by ys
order by sum(je) desc;
7.update a
set a.zc = b.zc
from mz_bfsf a,mz_brxx b
where a.ys = b.ys
⑼ SQL语句求助
1.找出没有选修过“李明”老师讲授课程的所有学生姓名
select 姓名 from S where not EXISTS (select * from SC where S.学号=SC.学号 and exists (select * from C where SC.课程号=C.课程号 and 任课教师='李明'))
2.求“王维一”同学的平均分。
select avg(成绩) from SC where 学号=(select 学号 from S where 姓名='王维一')
好像来不及回答完你的问题哦
⑽ 数据库期末考试题 编写SQL语句 1.创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系
create table 学生表
(
学号 char(10) primary key,
姓名 char(10),
年龄 int,
性别 char(2) check (sex IN ('男','女')),
家庭住址 char(40),
联系 char(20)
)