请教大家一个sql存储过程或者函数
现在有一个参数传给存储过程,存储过程中有条sql语句条件是in
……where nme in(‘参数1’,‘参数2’,‘参数3’,‘参数4’)
程序传得参数格式是:参数1,参数2,参数3,参数4
@parm=txt1,txt2,txt3,txt4
现在需要一个函数或者存储过程将它们转换成:'txt1','txt2','txt3','txt4'
[解决办法]
亲,有一个charindex可以试试哦~~~
where
charindex(','+rtrim(nme)+',' , ','+@parm+',' ) >0
如果要华丽变身,无非是set @parm = ''''+replace(@parm,',',''',''')+''''
[解决办法]
- SQL code
/*try*/declare @parm nvarchar(400)set @parm = '510-LIND RMA,511-LIND RMA' /***/ insert into LPACKING_D (PAC_NB,PAC_SQ,SO_NB,SO_SQ,SO_QT,ITEM_CD,EXCH_UM,EXCH_AM)select PAC_NB='11',row_number() over(order by CO_CD) as row_number ,SO_NB,SO_SQ,SO_QT,ITEM_CD,EXCH_UM,EXCH_AM from dzicube..LSO_D where charindex(','+rtrim(so_nb)+',' , ','+@parm+',')>0