1.If...Else...語句
格式:
If 布爾表達式
{SQL語句或語句塊}
[Else
{SQL語句或語句塊}]
2.BEGIN...END語句
功能:將多條SQL語句封裝起來,構成一個語句塊
格式:
BEGIN
{sql語句或語句塊}
ENd
3.WHERE、BREAK、CONTINUE語句
[例]:求1到10之間的奇數數據和
DECLARE @I smallint,@sum smallint SELECT @i=0,@sum=0 WHILE @i>=0 BEGIN SELECT @i=@i+1 IF @i>10 BREAK If(@i%2)=0 CONTINUE ELSE SELECT @sum=@sum+@I End SELECT @sum
4.WAITFOR語句
格式:WAITFOR{DELAY 'time'|TIME 'time'}
time:detetime
[例]:
WAITFOR TIME '10:00' 設置在10:00執行一次命令;
WAITFOR DELAY '1:00' 設置在一小時後執行一次命令。
5.RETURN([整數表達式])
CASE 表達式
(1)簡單case表達式
CASE 表達式
WHEN 表達式1 THEN 表達式2
[WHEN 表達式3 THEN 表達式4[......]]
[ELSE 表達式N]
END
例:
select name=convert(varchar(15),au_lname), contract=case contract when 0 then 'invalid contract.' when 1 then 'valid contract.' End from authors
(2)搜索型CASE表達式
CASE表達式
WHEN 布爾表達式1 THEN 表達式1
[WHEN 布爾表達式2 THEN 表達式2[.....]]
[ELSE 表達式N]
End
例: select name=convert(varchar(15),au_lname), contract=case contract when cintract=0 then 'invalid contract.' when contract<>0 then 'valid contract.' End from authors
(3)CASE關系函數
CASE關系函數有以下3種形式:
●COALESCE(表達式1,表達式2)
●COALESCE(表達式1,表達式2,......,表達式N)
●NULLIF(表達式1,表達式2)