一般情况下,存储过程中的sql语句使用了 in ,关键in的这个田条件本身就有逗号,如下,调用时该如何处理
select * from A where code in('0,1','0,2')
sql语句最外面加一个 exec('') 其语句为(where a in('+@str+'))然后在Net中调用即可
怎么处理取决于你传进存储过程的参数值啊!!
如果传入的是类似 ‘a’,'b','c' 这样一个字符串的话,直接放到in的条件中就可以。
select * from A where code in(@param) ;
如果传入的是类似 a,b,c 这样的就,就要处理成带单引号的形式(下面是基于SQLSERVER的一个例子)。
select * from A where code in('''' + REPLACE(@param,',',''',''') + '''');
具体情况要具体分析!!