DECLARE @age INTSELECT @age = 15IF @age > 10 BEGIN PRINT '年齡大于'+ CAST(@age AS VARCHAR(5)) SELECT name,age FROM employee WHERE age > @age ENDELSE BEGIN PRINT '年齡小于等于' + CAST(@age AS VARCHAR(5)) SELECT name,age FROM employee WHERE age <= @age END
三、WHILE 語句
DECLARE @i INT,@j INT,@tmp VARCHAR(100)SET @i = 1SET @j = 1SET @tmp = ''PRINT '打印9*9乘法表'WHILE @i <= 9 BEGIN WHILE @j <= 9 BEGIN SET @tmp = @tmp + ' ' + CAST(@i*@j AS CHAR(2)) SET @j = @j + 1 END PRINT @tmp SET @tmp = '' SET @j = 1 SET @i = @i + 1 END
四、CASE 語句
-- CASE 等于判斷,相當于枚舉SELECT name,CASE dept_id WHEN 1 THEN '總經理辦公室' WHEN 2 THEN '人力資源部' WHEN 3 THEN '行政部' WHEN 4 THEN '財務部' WHEN 5 THEN '銷售部' WHEN 5 THEN '技術研發部' ELSE '其他部門' END AS deptFROM employee-- CASE WHEN 帶條件DECLARE @num INT,@output NVARCHAR(10)SET @num = 19SET @output = CASE WHEN @num < 8 THEN '一個數小于 8' WHEN @num = 10 THEN '這個數是 10' WHEN @num / 3 = 0 THEN '這個數能被3整除' ELSE '這個數不在設定條件內' ENDPRINT @output
五、GOTO 語句
PRINT '執行第一句'GOTO labelPRINT '執行第二句'label: BEGIN PRINT '跳轉到 LABEL 語句' PRINT 'GOTO 語句容易出現死循環' END