本文介绍了关于SQL Server中的IN子句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好,
我已将逗号分隔的参数传递给存储过程,但没有得到结果,
例如.
hello all,
I have pass comma separated parametor to Stored procedure but i don''t get result,
E.g.
@status_code='1','2';
我已经在SP中替换了它,例如
and I have replace it in SP like
tof.case_status in(convert(varchar(max),@status_code))
但我没有得到结果,
请告诉我我哪里错了
but i don''t get result,
please tell me where i am wrong
推荐答案
CREATE TABLE #tof(case_status INT)
INSERT INTO #tof(case_status)
VALUES (1)
INSERT INTO #tof(case_status)
VALUES (2)
INSERT INTO #tof(case_status)
VALUES (3)
INSERT INTO #tof(case_status)
VALUES (4)
INSERT INTO #tof(case_status)
VALUES (5)
DECLARE @status_code NVARCHAR(300)
DECLARE @sql_query NVARCHAR(300)
SET @status_code='1, 2'
SET @sql_query = 'SELECT * ' +
'FROM #tof ' +
'WHERE case_status IN (' + @status_code + ')'
EXEC (@sql_query)
DROP TABLE #tof
这篇关于关于SQL Server中的IN子句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!