2012-03-07 69 views
1

假設我有一個這樣的表:如何寫一個mysql子查詢,其中一個表根據返回一行的表返回多行?

**tbl_purchase** 
PurchaseID 
Date 
Supplier 

**tbl_purchaseitem** 
PurchaseItemID 
PurchaseID 

我想創建一個查詢它會返回類似:

**Header** 
PurchaseID = 2 
Date: 4/26/12 
Supplier:stackoverflow 

*Items* 
PurchaseItemID:3 
PurchaseID:2 

PurchaseItemID:4 
PurchaseID:2 

PurchaseItemID:5 
PurchaseID:2 

先生/女士你的答案會是很大的幫助並非常感謝。

回答

1
Select * from tbl_purchase 
inner join 
tbl_purchaseitem 
on 
tbl_purchase.PurchaseID = tbl_purchaseitem.PurchaseID 
where 
PurchaseID = 2 
and 
Date = '4/26/12' 
and 
Supplier = 'stackoverflow' 
1

像這樣:

SELECT pi.* 
FROM tbl_purchase p 
INNER JOIN tbl_purchaseitem pi 
    ON p.PurchaseID = pi.PurchaseID 
WHERE p.PurchaseID = 2 AND 
     p.Date  = '2012-04-26' AND 
     p.Supplier = 'stackoverflow' 
相關問題