【发布时间】:2018-08-02 07:41:30
【问题描述】:
我想将声明的变量传递到哪里。
例如我有一张桌子#test:
ID Amount
1 100
2 50
3 20
4 40
5 150
我想做这样的事情:
declare @id varchar(11) = '(1, 4, 5)'
select * from #test where IDNumber in @id
我该怎么做?
【问题讨论】:
-
逗号分隔的项目和 SQL 不能很好地结合在一起。您使用的是哪个 dbms?
-
使用数据类型设计来存储多个值(表值参数/变量、XML、JSON),而不是把东西塞进字符串然后面对头疼,因为如果您希望 SQL 将它们视为多个值,则需要将它们分开。