关于SQL Server中的IN子句 [英] about IN Clause in SQL Server

查看:100
本文介绍了关于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

推荐答案

基本信息,您将在这里找到:
Basic information, you''ll find here: http://msdn.microsoft.com/en-us/library/ms177682.aspx[^]

Below, example code should works:
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子句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆