alter proc sp_report1
@f1 varchar(20),
@f2 varchar(20),
@p varchar(20),
@v1 varchar(50),
@v2 varchar(50)
with encryption
as
begin
declare @s varchar(500)
select @s='select * from t_nbwl2006 where 1=1'
if isnull(@p,'')<>''
select @s=@s+' and rtrim(年度)+rtrim(期间)='''+replace(replace( ''+@p+'','年',''),'期','')+''''
if isnull(@f1,'')<>''
select @s=@s+' and '+@f1+' like ''%'+@v1+''''
if isnull(@f2,'')<>''
select @s=@s+' and '+@f2+' like ''%'+@v2+''''
--print @s
exec(@s)
end
@f1 varchar(20),
@f2 varchar(20),
@p varchar(20),
@v1 varchar(50),
@v2 varchar(50)
with encryption
as
begin
declare @s varchar(500)
select @s='select * from t_nbwl2006 where 1=1'
if isnull(@p,'')<>''
select @s=@s+' and rtrim(年度)+rtrim(期间)='''+replace(replace( ''+@p+'','年',''),'期','')+''''
if isnull(@f1,'')<>''
select @s=@s+' and '+@f1+' like ''%'+@v1+''''
if isnull(@f2,'')<>''
select @s=@s+' and '+@f2+' like ''%'+@v2+''''
--print @s
exec(@s)
end
本文介绍了一个使用T-SQL编写的动态SQL查询生成器,通过参数化的方式实现灵活的数据检索。该查询构造器支持多种过滤条件,包括年度和期间的精确匹配及其它字段的部分匹配。
636

被折叠的 条评论
为什么被折叠?



