select id from basis_log where f_f1='a' and f_f2='b' and f_f3='c'
可以正确地执行.
但是改成
declare @cond varchar(100)
set @cond = 'f_f1=''a'' and f_f2=''b'' and f_f3=''c'''
select * from basis_log where @cond
执行出错.
请问能有什么好的办法能解动态条件问题.
我的情况主要是:在存储过程中,我的条件个数是参数决定的,这个参数是用户的操作来决定的.主要是获得查询中的值.如果我将查询语句也写成字符串,再执行的话,我就没有办法获得查询的值(id),请问能有什么好的办法?谢谢!