想实现以下存储过程效果,但结果怎么都是@qy=0
肯定是哪里写错了,谁能帮我看下?
--- 从hr_qhcjlis表中的判断3种情况,
--- if (xj<>1)   第一种是正常申请的请假单(未申请销假),
--- if (xj=1)and(shzt like 3 is not exist) 第二种  请假单已申请销假(但未销假签核) 
 --- if (xj=1)and(shzt like 3 ) 第三种  请假单已销假签核 
     (shzt字段的值:有可能是112或131或312或213... 所以我只要里面有3的存在 就是销假已签核)CREATE PROCEDURE p_checkXj2
@djh varchar(20),
@qy varchar(10) out AS
begin
declare @shzt varchar(10)
declare @xj varchar(10)select @shzt=shzt,@xj=xj from hr_qhcjlis where djh=@djh if (@xj<>'1' )set @qy='1' --第一种  说明是正常申请的请假单   
if (@xj='1' )and(@shzt like '%‘3’%')
set @qy='2'   --第三种  请假单已销假签核else
set @qy ='0'  -- 第二种 说明是销假申请中return @qyend
GO