CREATEproceduredbo.select_a @bvarchar(50), @cvarchar(50), @dvarchar(50), @evarchar(50) as declare@strsqlvarchar(5000); set@strsql='select*fromawhere1=1'; if@b'' set@strsql=@strsql+'andb="'+@b+'"'; if@c'' set@strsql=@strsql+'andc="'+@c+'"';
CREATE procedure dbo.select_a @b varchar(50), @c varchar(50), @d varchar(50), @e varchar(50) as declare @strsql varchar(5000) ; set @strsql='select * from a where 1=1 '; if @b <>'' set @strsql= @strsql+' and b="'+@b +'"'; if @c <>'' set @strsql= @strsql+' and c="'+@c +'"'; if @d <>'' set @strsql= @strsql+' and d="'+@d +'"'; if @e <>'' set @strsql= @strsql+' and e="'+@e +'"'; exec (@strsql) GO