Transact-SQL 語言使用的流程控制命令與常見的程序設(shè)計(jì)語言類似主要有以下幾種控制命令。
4.6.1 IF…ELSE
其語法如下:
IF <條件表達(dá)式>
<命令行或程序塊>
[ELSE [條件表達(dá)式]
<命令行或程序塊>]
其中<條件表達(dá)式>可以是各種表達(dá)式的組合,但表達(dá)式的值必須是邏輯值“真”或“假”。ELSE子句是可選的,最簡單的IF語句沒有ELSE子句部分。IF…ELSE用來判斷當(dāng)某一條件成立時(shí)執(zhí)行某段程序,條件不成立時(shí)執(zhí)行另一段程序。如果不使用程序塊,IF或ELSE只能執(zhí)行一條命令。IF…ELSE可以進(jìn)行嵌套。
例4-9
declare@x int,@y int,@z int
select @x=1,@y=2, @z=3
if@x>@y
print'x>y' --打印字符串'x>y'
else if@y>@z
print'y>z'
else print'z>y'
運(yùn)行結(jié)果如下
z>y
注意:在Transact-SQL中最多可嵌套32級。
4.6.2 BEGIN…END
其語法如下:
BEGIN
<命令行或程序塊>
END
BEGIN…END用來設(shè)定一個(gè)程序塊,將在BEGIN…END內(nèi)的所有程序視為一個(gè)單元執(zhí)行BEGIN…END經(jīng)常在條件語句,如IF…ELSE中使用。在BEGIN…END中可嵌套另外的BEGIN…END來定義另一程序塊。
4.6.3 CASE
CASE 命令有兩種語句格式:
CASE <運(yùn)算式>
WHEN <運(yùn)算式>THEN<運(yùn)算式>
…
WHEN<運(yùn)算式>THEN<運(yùn)算式>
[ELSE<運(yùn)算式>]
更多信息請查看IT技術(shù)專欄