SQL Server掌握語句的根本運用。本站提示廣大學習愛好者:(SQL Server掌握語句的根本運用)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL Server掌握語句的根本運用正文
1.語句塊(BEGIN…END)
語句塊語法以下:
BEGIN
<SQL語句或法式塊>
END
BEGIN…END用來設定一個語句塊,可以將多條Transact-SQL語句封裝起來組成一個語句塊,在處置時,全部語句塊被視為一條語句。BEGIN…END常常用在前提語句中,如IF…ELSE 或WHILE輪回中。BEGIN…END語句可以嵌套應用。
2.斷定語句(IF…ELSE)
平日盤算機是按次序履行法式中的語句,然則在很多情形下,語句履行的次序和能否履行依附於法式運轉的中央成果,在這類情形下,必需依據某個變量或表達式的值作出斷定,以決議履行哪些語句或不履行哪些語句。這時候可以應用IF…ELSE語句作出斷定,選擇履行某條語句或語句塊。
斷定語句語法以下:
IF <前提表達式>
<敕令行或語句塊1>
[ ELSE [前提表達式]
<敕令行或語句塊2> ]
3 檢測語句(IF…EXISTS)
IF…EXISTS語句用於檢測數據能否存在,而不斟酌與之婚配的行數。關於存在性檢測而言,應用IF…EXISTS要比應用COUNT(*)>0好,效力更高,由於只需找到第一個婚配的行,辦事器就會停滯履行SELECT語句。
檢測語句語法以下:
IF [NOT] EXISTS (SELECT查詢語句)
<敕令行或語句塊1>
[ELSE]
<敕令行或語句塊2>
4 多分支斷定語句(CASE…WHEN)
CASE…WHEN構造供給了比IF…ELSE構造更多的選擇和斷定機遇,應用它可以很便利地完成多分支斷定,從而防止多重IF…ELSE語句嵌套應用。多分支斷定語句CASE…WHEN語法有兩種格局:
第一種格局語法以下:
CASE <算術表達式>
WHEN <算術表達式> THEN <運算式>
WHEN <算術表達式> THEN <運算式>
[ELSE <算術表達式>]
END
第二種格局語法以下:
CASE
WHEN <前提表達式> THEN <運算式>
WHEN <前提表達式> THEN <運算式>
[ELSE <運算式>]
END
5 輪回語句(WHILE)
輪回語句可以設置反復履行SQL語句或語句塊的前提,只需指定的前提為TRUE(前提成立),就反復履行語句。
輪回語句語法以下:
WHILE <前提表達式>
BEGIN
<敕令行或法式塊>
[BREAK]
[CONTINUE]
[敕令行或法式塊]
END
6 跳轉語句(GOTO)
應用跳轉語句GOTO可以轉變法式履行的流程,使法式跳到標有標識符的指定法式行,再持續往下履行,作為跳轉目的的標識符可所以數字與字符的組合,但必需以“:”開頭。
跳轉語句語法以下:
GOTO 標識符:
7 前往語句(RETURN)
前往語句用於停止以後法式的履行前往到上一個挪用它的法式或其它法式,在括號內可指定一個前往值。前往語句可以使法式從批處置、存儲進程、觸發器中無前提加入,不再履行RETURN以後的任何語句。前往語句語法以下:
RETURN ([整數值])
8 延期履行語句(WAIT…FOR)
WAITFOR語句用來臨時停滯法式履行,直到所設定的期待時光已過或所設定的時辰已到,才持續往下履行。個中時光必需為DATETIME 類型的數據,延遲時光和時辰均采取“HH:MM:SS”格局,在WAITFOR語句中不克不及指定日期,而且時光長度不克不及跨越24小時。
延期履行語句語法以下:
WAITFOR { DELAY <‘時光'> | TIME <‘時光'> }
sql_statement
DELAY:用來設定期待的時光距離,最多可達24 小時。
TIME:用來設定期待停止的時光點。
sql_statement:設定的期待時光已過或所設定的時辰已到,要持續履行的SQL操作語句。