SQL SERVER 流程控制語句
1、BEGIN……ELSE語句:通常包含在其他流程控制中;
示例:定義區域性變數@number,如果@number的值小於5,則執行WHILE中的語句塊;
DECLARE @number INT;
SELECT @number=0;
WHILE @number<5
BEGIN
PRINT 'number=' + CONVERT(VARCHAR(10), @number)
SET @number=@number+1
END
PRINT '迴圈過後number的值為' + CONVERT(VARCHAR(10), @number)
2、IF……ELSE語句:
示例:IF……ELSE流程控制語句的使用;
DECLARE @count INT;
SELECT @count=10;
IF @count>11
PRINT 'count的值比10大。'
ELSE
PRINT 'count的值不大於10。'
3、CASE語句:多條件分支語句,有兩種格式:
格式一示例:根據id的值給‘排序’賦值;
USE test2 ---資料庫名
SELECT id,gender,
CASE id
WHEN 1 THEN '第一' --如果id=1,則排序=第一;
WHEN 2 THEN '第二' --如果id=2,則排序=第二;
ELSE '無' --其他的id,排序=無;
END AS '排序'
FROM person
格式二示例:
SELECT id,gender,
CASE
WHEN id < 2 THEN '第二'
WHEN id < 3 THEN '第一'
ELSE '無'
END AS '排序'
FROM person
4、WHILE語句示例:
DECLARE @count INT;
SELECT @count=10;
WHILE @count > 0
BEGIN
IF @count > 5
BEGIN
PRINT 'count等於'+CONVERT(VARCHAR(10),@count)+',大於5繼續執行;';
SELECT @count=@count-1;
CONTINUE;
END
ELSE
BEGIN
PRINT 'count等於'+CONVERT(VARCHAR(10),@count)+',不大於5,迴圈結束;';
BREAK;
END
END
PRINT 'WHILE迴圈結束後,count的值為'+CONVERT(VARCHAR(10),@count);
5、GOTO語句:表示將執行留跳轉到標籤處;
示例:
USE test2
BEGIN
SELECT id FROM person;
GOTO jump
SELECT gender FROM person; --第二條SELECT語句沒有執行;
jump:
END
6、WAITFOR語句:用來暫時停止程式的執行,直到所設定的等待時間已過或快到時才繼續往下執行,延遲的時間格式為“HH:MM:SS”,在WAITFOR語句中不能指定日期,並且時間長度不能超過24小時;
–示例:10秒的延遲後執行SET語句(即10秒鐘後才輸出語句“520”);
DECLARE @num VARCHAR(10);
SET @num='520';
BEGIN
WAITFOR DELAY '00:00:10';
PRINT @num;
END;
7、RETURN語句:可在任何時候用於從過程、批處理或語句塊中退出,RETURN之後的語句是不執行的;儲存過程可向執行呼叫的過程或應用程式返回一個整數值,如“RUTURN 2”。除非另有說明,否則所有系統儲存過程返回的值均為0,0表示成功,非0表示失敗;
相關文章
- Sql Server系列:流程控制語句SQLServer
- Sql Server系列:資料控制語句SQLServer
- 流程控制語句
- Java流程控制語句Java
- 【分支流程控制語句、迴圈流程控制語句】的學習
- sql查詢語句流程SQL
- Sql Server系列:Update語句SQLServer
- Sql Server系列:Delete語句SQLServerdelete
- SQL server 查詢語句SQLServer
- sql server中常用語句SQLServer
- 流程控制、 迴圈語句
- ### 流程控制語句結構
- 流程控制語句結構
- DBA常用SQL語句[sql server] 2SQLServer
- MySql與Sql Server Update語句MySqlServer
- SQL Server阻塞查詢語句SQLServer
- Sql Server系列:Insert語句SQLServer
- Sql Server Rollup 語句的用法SQLServer
- Java基礎 - 流程控制語句Java
- python之流程控制語句Python
- JavaScript常用的流程控制語句JavaScript
- SQL Server SQL語句執行順序SQLServer
- PLSQL Language Referenc-PL/SQL控制語句-順序控制語句-NULLSQLNull
- PL/SQL 條件控制語句SQL
- PL/SQL迴圈控制語句SQL
- 『忘了再學』Shell流程控制 — 39、特殊流程控制語句
- mysql的sql語句執行流程MySql
- SQL Server優化之SQL語句優化SQLServer優化
- Python流程控制語句詳解Python
- php有幾種流程控制語句PHP
- JavaScript進階之流程控制語句JavaScript
- Sql Server系列:Select基本語句SQLServer
- Linux下邏輯測試語句引數和流程控制語句 if語句Linux
- JavaScript 流程控制語句詳解:if語句、switch語句、while迴圈、for迴圈等JavaScriptWhile
- JavaScript的流程控制語句以及函式JavaScript函式
- python三種流程控制的語句Python
- Python中流程控制語句有哪些?Python
- go 流程控制之switch 語句介紹Go