SQL TSQL否则,如果工作不正常

问题描述:

我有一个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

工作得很好,你不能有开始和结束之间没有任何东西:

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