从temp-table中获取行并使用IN语句

时间:2017-02-27 23:39:13

标签: sql sql-server

我的上一篇文章有​​问题。好吧,我有一个临时表,有多行数字:

enter image description here

它被保存到表变量中:

DECLARE @VALUE varchar(500) = '482';

DECLARE @CONTRACT_MEMBER_BRG_ATTR_ITEM_IDS TABLE
(
   item_id nvarchar(100)
);

INSERT INTO @CONTRACT_MEMBER_BRG_ATTR_ITEM_IDS 
    SELECT item_id 
    FROM [CONTRACT_MEMBER_BRG] 
    WHERE member_item_id = @VALUE 

我需要获取所有这些值并将其放入我的另一个查询中的in语句中:

SELECT * 
FROM 
    (complicated SELECT query) a
WHERE
    item_id IN (8086, 8087, 8088, 8089, 8090, 8091, 8092);

如何将所有行添加到可在IN语句中使用的变量?

1 个答案:

答案 0 :(得分:2)

... where id in (select id from temp_table where...)