1.声明一个sql变量,declare @sql1 nvarchar(2000) 或其他方法声明。通过IF 条件 begin .......;end ELSEIF 条件 begin .......;end ELSE begin .......;end 进行sql字符传的拼接。最后再执行 EXEC sp_executesql @sql1 来执行sql语句。
2.如果判断条件简单的话可以直接在查询条件中进行判断,其就是通过OR,AND运算符来语义话语句
select *
from user cc
where
and cc.userid =v_userid and ((v_limit is null) or ( ((v_numbera is null) or instr(substr(card_no,-v_limit),v_numbera) = 0) and( (v_numberb is null) or instr(substr(card_no,-v_limit),v_numberb) = 0) ) )