2016-11-17 50 views
1

我想從行中獲取數據,然後使用該行中的數據查找所有行。SQL - 當行有值時選擇所有具有值X的行Y

我的表是這樣的:

Invoice Desc   Item_Code  Units  Price  Amount 
1000  PHASE A  45   10  20  200 
1000  BOLTS   16   45  1   45 
1000  Jerry   10   1   100  100 
1001  PHASE B  19   10  5   50 

我想與無論是在發票返回所有行的時候說明是LIKE A相

我知道足夠寫:

SELECT 
Invoice, Desc, Item_Code, Units, Price, Amount 
FROM tbl 
WHERE 
Desc LIKE '%PHASE A%' 

這將只返回包含PHASE A的行 - 我想要PHASE A的每一行如下:

1000  PHASE A  45   10  20  200 
1000  BOLTS   16   45  1   45 
1000  Jerry   10   1   100  100 

我覺得應該在IN語句中,或者我需要附加一個IN語句,但不知道它應該放在哪裏。

+0

DESC是一個保留字,所以我想你不知道夠不夠甚至爲便於該;-) – Strawberry

+0

縮短表。 –

回答

2

我覺得這應該是在IN語句中,或者我需要追加一個 IN聲明,但不知道它應該去哪裏。

這裏

SELECT Invoice, 
     Desc, 
     Item_Code, 
     Units, 
     Price, 
     Amount 
FROM tbl 
WHERE Invoice IN (SELECT Invoice 
        FROM tbl 
        WHERE Desc LIKE '%PHASE A%')