当前位置: 代码迷 >> Sql Server >> SQL 多重if else判断求分析求解答,该如何解决
  详细解决方案

SQL 多重if else判断求分析求解答,该如何解决

热度:42   发布时间:2016-04-24 10:44:48.0
SQL 多重if else判断求分析求解答
if @M_State is not null           --------------------能够找到该卡号最近的一条消费记录
begin

   if @M_State='00' and @M_CardState='01'  
begin
set @sql='select '+ @M_LockID + ' ,' + @M_ReturnTime+' ,' + @M_State+' ,' + @M_CardBlance+' ,' +@M_Amount 
exec(@sql)
end 
   else if @M_State='01' and @M_CardState='01' 
begin

if @M_CardState!='01'
begin 
set @M_Return=13        
end

else
if @M_Area<@Area            
begin 
set @M_Return=2        
end

else
begin
set @M_Return=0         -------------------允许还车  
end
end
end

else if @M_State is null      
begin
set @M_Return=0   
end 

关键字 'else' 附近有语法错误,不知道该怎么实现了,求高手解答下啊
------解决方案--------------------
编译能通过,你给的信息太少,看不出什么问题
DECLARE @M_State VARCHAR(10)
DECLARE @sql VARCHAR(10)
DECLARE @M_CardState VARCHAR(10)
DECLARE @M_LockID VARCHAR(10)
DECLARE @M_Return VARCHAR(10)
DECLARE @M_CardBlance VARCHAR(10)
DECLARE @M_Area VARCHAR(10)
DECLARE @Area VARCHAR(10)
DECLARE @M_Amount VARCHAR(10)
DECLARE @M_ReturnTime VARCHAR(10)
IF @M_State IS NOT NULL           --------------------能够找到该卡号最近的一条消费记录
    BEGIN

        IF @M_State = '00'
            AND @M_CardState = '01'
            BEGIN
                SET @sql = 'select ' + @M_LockID + ' ,' + @M_ReturnTime + ' ,'
                    + @M_State + ' ,' + @M_CardBlance + ' ,' + @M_Amount 
                EXEC(@sql)
            END 
        ELSE
            IF @M_State = '01'
                AND @M_CardState = '01'
                BEGIN

                    IF @M_CardState != '01'
                        BEGIN 
                            SET @M_Return = 13        
                        END

                    ELSE
                        IF @M_Area < @Area
                            BEGIN 
                                SET @M_Return = 2        
                            END

                        ELSE
                            BEGIN
                                SET @M_Return = 0         -------------------允许还车  
                            END
                END
  相关解决方案