【发布时间】:2020-12-22 17:09:46
【问题描述】:
我需要通过提供多个声明值来实现结果。怎么办?
DECLARE @ID INT
SET @ID = 1 --instead I need to provide multiple values like @ID = 1,2,3
SELECT C.Name, C.EmployeeID
FROM Cases c
WHERE C.EmployeeID = @ID
表格
Name | ID
-------+---------
A 1
B 2
C 3
D 4
E 5
F 6
结果应该是:
A 1
B 2
C 3
【问题讨论】:
-
你不能。标量变量保存单个值。您需要一个表变量(或临时表或实际表)来存储多个值,为您的查询使用连接或 IN 子句。
-
您应该说明这些值的来源以及它们的数量是否始终相同。
-
仅供参考,SQL Server 2008 在一年多前就已终止;您真的应该尽快查看升级路径。
标签: sql-server sql-server-2017 ssms-2017