2014-09-25 56 views
0

我想在一個表上創建一個SELECT查詢(或類似的東西)的對象列表,然後將其應用到另一個表以返回匹配的行。從SQL選擇創建對象

我的代碼:

--Create an object from a selection. 

SELECT (item_number) AS the_item_numbers, 
FROM Table_1 
WHERE CATEGORY = 'A Category in Table_1.Category' 

--Now I want to use the object the_item_numbers to return every matching row from a separate table. 

SELECT * 
WHERE item_number IN (the_item_numbers) 
FROM Table_2 

目前我唯一的方法是使用select查詢來獲取ITEM_NUMBERS的名單,我再手動添加到第二個選擇查詢的IN,我敢肯定是一個不必要的緩慢的方式來做到這一點。

如何在一個查詢中實現最終結果?

回答

1

最簡單的方法將是一個加入

Select Table_2.* 
From Table_2 
Inner Join Table_1 on 
Table_1.ItemNumber = Table_2.ItemNumber 
Where Table_1.Category = 'A Category in Table_1.Category'