请问一下这样写对不?第一个if是判定有无,有就执行,没得就跳过,后面的呢?谢谢大神指点

---判断wms传入数据是否传完
IF Exists (SELECT *FROM Pass_新入库返回接口表_each WHERE WMS收货单号=@BillNo)
BEGIN
IF Exists(SELECT * FROM  (SELECT COUNT(*)TS,WMS收货单号 FROM Pass_新入库返回接口表_each    
          GROUP BY WMS收货单号) A LEFT JOIN (SELECT COUNT(*)TS,LSH  FROM 
          RKD  GROUP BY LSH)B ON A.WMS收货单号=B.LSH  WHERE WMS收货单号=@BillNo AND   A.TS<>B.TS)
Begin
    set @ReturnMsg='单据['+@BillNo+']WMS传入商品条数与实际条数不符,不允许审核!' 
    GOTO SQLERR;
End
END

没问题,就是你后面问的那句没看明白

可以这样写,但是应该少用GOTO语句,可以用raiseror