2012-03-28 65 views
0

我有一個TSQL以下短版本,如果否則,如果..SQL TSQL否則,如果工作不正常

IF @var = 1 
    BEGIN 
    ... 

    END 
    ELSE IF @var = 2 
    BEGIN 
    .... 

    END 
    ELSE IF @var = 3 
    BEGIN 
     .... 
    END 
    .... 

我得到一個消息,說的關鍵字「BEGIN」當我使用它附近的語法不正確對於@var = 2。

不知道我做錯了什麼

+1

上有什麼條件之間?如果它的空白,它會出錯。 – Curt 2012-03-28 14:59:34

回答

1

工作得很好,你不能有開始和結束之間沒有任何東西:

declare @var int = 2 
IF @var = 1  
BEGIN  
select 1 
END  
ELSE IF @var = 2  
BEGIN  
select 2 
END  
ELSE IF @var = 3  
BEGIN  
select 3 
END 

結果:

2