实验四
T-SQL****语言基本流程控制语句
一.实验目的:
\1. 掌握T-SQL语言的基本语法格式。
\2. 掌握T-SQL语言的运算符和表达式。
\3. 掌握T-SQL语言的基本流程控制语句。
二.实验内容:(所有题写到实验报告中)
1.按要求写出命令
1)定义局部变量a、b、c、s1、s2并赋初值5、4、4.0、‘abc’、‘def’,分别求a与b的积、商、余数、按位与、按位或、按位异或,a与c的商,s1与s2的串连。(注意比较a与b的商和a与c的商有何不同。)
2)输出当前SQL Server的版本信息,输出执行上一条T-SQL语句所返回的错误代码。
3)对student表,将某个学号的值赋给某个变量,然后查询学号为该变量的学生的姓名,将查到的姓名赋给另一个变量并输出其值。
4)对score表,将某个课程号赋给某个变量,然后查询课程号为该变量的选课人数和最高成绩分别赋给另外两个变量并输出其值。
2.编写程序
1)输出每位教师的教师号、姓名和职称级别。(职称级别:教授和副教授为高级职称;讲师为中级职称,助教为初级职称)
2)按优、良、中、及格、不及格五级成绩等级输出学生的姓名、课程名和成绩等级,输出结果先按课程号升序排再按姓名升序排。
3)求出男女生的平均成绩,若男生平均成绩与女生平均成绩的比率高于1.3,则显示“男生比女生成绩高多了”;若男生平均成绩与女生平均成绩的比率在0.8~1.3之间,则显示“男生与女生成绩差不多”;若男生平均成绩与女生平均成绩的比率低于0.8,则显示“女生比男生成绩高多了”。
4)创建如下表,然后向表中插入20条记录,前两列使用默认值,第三列插入从当前日期开始的连续的20天的日期(使用循环语句插入,可参考304页q函数)。
create table xsrq
(spno char(4) default('3741'),
spname char(20) default('苹果MacBook Pro '),
scrq date)
屏幕快照 2018-12-17 下午9.49.50.png2-1
use stuinfo
SELECT tno AS '教师号', tname AS '姓名', (CASE WHEN prof = '教授' THEN '高级' WHEN prof = '副教授' THEN '高级' WHEN prof = '讲师' THEN '中级' WHEN prof = '助教' THEN '初级' END) AS '职称' FROM teacher;
屏幕快照 2018-12-17 下午9.49.58.png2-2
USE stuinfo
select sname as '姓名',cname as '课程名',(case when degree>=90 then '优秀' when degree>=80 then '良' when degree>=70 then '中' when degree>=60 then '及格' when degree<60 then '不及格' end) as '成绩等级' from student,course,score where student.sno=score.sno and course.cno=score.cno order by score.cno
2-3
[图片上传失败...(image-8783d1-1545054442691)]
2-4
use stuinfo
DECLARE @i int;
set @i=0
while @i<20
BEGIN
insert into xsrq(spno, spname, scrq) values (default, default, (select getdate()+@i))
set @i=@i +1
END
网友评论