sql中的IF ELSE使用方法

–没有bool值,只有条件表达式
–没有{},只有begin…end
–可以多重,可以嵌套
–如果包含的语句只有一句,那么也可不适用begin…end
–if或者else里面必须有处理语句,如没有报错

示例:–计算科目名称为office平均分数并输出,如果平均分数超过60分输出成绩最高的三个学生成绩,否则输出后三名学生的成绩

declare @subjectName varchar(20) = 'office' --定义科目为office
declare @subjectID varchar(10) = (select subjectID from subject where subjectName = @subjectName) --定义科目id
declare @avg int = (select avg(StudentResult) from result where SubjectID = @subjectID) --计算平均分
-- print @avg 打印平均分数
if(@avg >60)
	begin
		select top 3 * from result order by StudentResult desc	--平均分数大于60取科目成绩前三的学生信息
	end
else
	begin
		select top 3 * from result order by StudentResult asc	--平均分数≤60取科目成绩后三的学生信息
	end
go

效果:
在这里插入图片描述

你可能感兴趣的:(#,SQL,SERVER,sql,数据库,database)