Tsql 动态地构建语句

Tsql 动态地构建语句,tsql,Tsql,我要动态搜索条件 这是我的表这是动态生成的这不是一个物理表 id Tablename columnname Value | 1 Company Company_name Microsoft | 2 Address Pcity CA | 3 Phone Pnumber 100-4582 | 我想搜索特定表中的值,

我要动态搜索条件

这是我的表这是动态生成的这不是一个物理表

id Tablename          columnname         Value    |
1  Company            Company_name      Microsoft |
2  Address            Pcity             CA        |
3  Phone              Pnumber           100-4582  |
我想搜索特定表中的值,在这个表中已经有了数据库公司、地址、电话。动态传递tablename和columnname并搜索值

我希望动态构建查询并在值列中搜索条件

我该怎么做


谢谢。

我的理解是,基本上您希望进行动态查询,因此我为您提供了一个示例

create proc dummy_proc

@arg1 varchar(50),
@arg2 int
as

Declare @S varchar(max)  

Set @S='select  * from  tablename where 1=1'

if @arg1<>'' then

set @s=@s+ 'and column1 like''%'+@arg1+%''' 

Execute(@S) 

希望有帮助

你能再解释一下吗。您可以使用变量作为参数进行上述查询。
create proc dummy_proc

@arg1 varchar(50),
@arg2 int
as

Declare @S varchar(max)  

Set @S='select  * from  tablename where 1=1'

if @arg1<>'' then

set @s=@s+ 'and column1 like''%'+@arg1+%''' 

Execute(@S)