create PROCEDURE [test]
(
@a int=1
)
as
DECLARE @SQLScript VARCHAR(8000)
if @a<>1 select @SQLScript=' where name=''a'''
select @SQLScript='select * from products'+@SQLScript
PRINT @SQLScript
EXEC(@SQLScript)
比如上面代码,如果@a<>1 执行 select @SQLScript=' where name=''a''' 否则不执行