T-SQL流程控制语句
if else语句
格式:
IF 布尔表达式
BEGIN
END
ELSE
BEGIN
END
示例:
DECLARE @a INT
SET @a = 3
IF @a%2=1
PRINT 'a为奇数'
ELSE
PRINT 'a为偶数'
结果:
简单case语句
格式:
CASE 表达式
WHEN 常量 THEN 结果表达式
ELSE 结果表达式
END
示例:
DECLARE @a INT,@b VARCHAR(10)
SET @a = 3
SET @b =
CASE @a
WHEN 1 THEN 'a的值为1'
WHEN 2 THEN 'a的值为2'
WHEN 3 THEN 'a的值为3'
ELSE 'a的值为其他'
END
PRINT @b
结果:
搜索式case语句
格式:
CASE
WHEN 条件表达式 THEN 结果表达式
ELSE 结果表达式
END
示例:把具体分数换为相应等级
DECLARE @a INT,@b VARCHAR(10)
SET @a = 78
SET @b =
CASE
WHEN @a>=90 THEN '优秀'
WHEN @a>=80 THEN '良好'
WHEN @a>=70 THEN '中等'
WHEN @a>=60 THEN '及格'
ELSE '不及格'
END
PRINT @b
结果:
while语句
格式:
while 表达式
BEGIN
END
示例:循环输出1至9
DECLARE @a int
SET @a = 1
while @a<10
BEGIN
PRINT @a
SET @a = @a+1
END
结果: