@message为output类型
else if exists(select status from tg_userInfo where userid=@userid)=0
set @message=0;
这个怎么报错?我想根据userid查询出status状态的值.如果等于0则给@message赋值为0
第 21 行: '=' 附近有语法错误。

解决方案 »

  1.   

    else if exists(select status from tg_userInfo where userid=@userid)
    set @message=0;
      

  2.   

    IF EXISTS ( SELECT  COUNT(1) FROM    tg_userInfo WHERE   userid = @userid AND status = 0 ) 
        BEGIN
            SET @message = 0 ;
        END
      

  3.   

    不是没有加end原因 2楼 那样就没有达到我想要效果! 我想在SQL里查询出来status 如果为0则@message=0
      

  4.   

    else if exists(select status from tg_userInfo where userid=@userid AND status = 0)
    set @message=0;
      

  5.   

    else if exists(select 1 from tg_userInfo where userid=@userid and status=0)
    set @message=0;
      

  6.   

    else if exists(select status from tg_userInfo where userid=@userid and status=0)
    set @message=0;条件要加到判断中。
      

  7.   

    exists本身就是返回一个布尔值,它的结果不能直接和数字0进行比较。所以应当把后面的“=0”去掉。