- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验名称: SQL基本语法(2)---程序结构
实验目的:掌握T-SQL程序编制基本结构及基本用法
实验内容:
掌握注释语句的基本用法
掌握GO批处理的应用方法
掌握BEGING语句块的应用方法
掌握IF分支结构语句基本用法
掌握CASE分支结构及基本用法
掌握WHILE循环结构及基本用法
掌握GOTO跳转结构及基本用法
实验步骤
注释句及批的用法
/*打开SCHOOL数据库*/
USE SCHOOL
GO
SELECT * FROM STUDENT WHERE SSEX=‘F’ --显示所有男生
GO
BEGIN语句块基本用法
如果学号为0001号学生的下平均成绩大于等于60,就显示PASS,否则显示NO
USE SCHOOL2
IF (SELECT AVG(DEGREE)FROM SCORE WHERE SNO=0001)=60
BEGIN
PRINT pass
END
ELSE
BEGIN
PRINT no pass
END
IF分支应用
*/ 查看学生表中有无计算机班的学生,如果有,则显示其学生信息,否则显示“查无班级学生” */
USE SCHOOL2
IF EXISTS (SELECT * FROM STUDENT WHERE DEPART=计算机)
BEGIN
SELECT * FROM STUDENT WHERE DEPART=计算机
END
ELSE
BEGIN
PRINT 查无此班级的学生
END
IF练习:学生自行编程
1.在SCORE成绩表中,查询K01课程的平均成绩,如果超过80分,则显示‘考试成绩不错’,否则显示‘考试成绩不理想’
2.定义变量X、Y,并给变量X赋值10,如果X大于零,则Y=1,如果X如果小于等于零,则Y等于-1,编程完成以上功能要求,并显示Y的结果
■IF嵌套的应用
练习:定义变量X、Y,并给变量X赋值10,如果X大于0,则Y=1,如果X如果小于0,则Y等于-1,如果X如果等于零,则Y等于0,编程完成以上功能要求,并显示Y的结果
BEGIN
DECLARE @X INT,@Y INT
set @X=10
if @X0
set @Y=1
else
BEGIN
IF @X=0
SET @Y=0
ELSE
set @Y=-1
END
print @Y
END
练习编程:定义一个变量M,将2012赋给变量M,编程判断2012年是否为闰年?如果是闰年,则显示“2012年是闰年”,否则显示“2012年不是闰年”
■CASE多分支结构应用
练习:查询学生表中学生的学号,姓名,性别,并使用CASE语句,根据学生表中的性别值进行转换为中文,如果是”F”则输出“男”,如果是“W”,则输出”女”
SELECT 学号, 姓名, 性别=
CASE 性别
WHEN ‘F’ THEN 男
WHEN ‘W’ THEN 女
ELSE ‘
END
FROM STUDENT
练习作业:查询学生表中学生的学号,姓名,性别,系名,系名的显示值要根据学生表中的系号值进行转换:如果是“D01”,则显示“计算机”, 如果是“D02”,则显示“电子系”, 如果是“D03”,则显示“人文, 如果是“D04”,则显示“经管”,
练习:根据成绩表中学生不同的成绩分布,得出不同的结论,请验证其以下语句,掌握其CASE的另一用法。
USE SCHOOL
GO
SELECT sno as 学号,CNO as 课号,degree as 成绩,
CASE
WHEN DEGREE=90 THEN 优
WHEN DEGREE=80 THEN 良
WHEN DEGREE=70 THEN 中
WHEN DEGREE=60 THEN 及格
WHEN DEGREE60 THEN 不及格
END AS 等级
FROM SCORE
GO
■WHILE单循环结构应用
练习:求1+2+3...+10的累加和,掌握其循环语句编程方法
declare @a int ,@s int
set @a=1
set @s=0
while @a=10
begin
set @s=@s+@A
SET @A=@A+1
END
SELE
文档评论(0)