2014-02-21 33 views
0

我有兩個數據庫表「一對多」的關係如何查詢一個 - 一對多的關係

讓的說,表A和表B從表A

一個領域是在表的外鍵乙 我想取從表格中的一條記錄,以及表B(給定表A的主鍵)

表一

id    name 
-------------------- 
1     ABC 
2     XYZ 

表B

id    A_id      email 
------------------------------------------------ 
1     1     [email protected] 
2     1     [email protected] 
3     1     [email protected] 
4     2     [email protected] 
4     2     [email protected] 

回答應該是這樣的(單個記錄從表B)

對於a.id = 1

A.id, A.name,B.email 
------------------------- 
1, ABC, [email protected] 

對於a.id = 2

A.id, A.name,B.email 
------------------------- 
1, XYZ, [email protected] 

我使用此查詢,但它返回表B中的所有記錄(因爲表B中的每個記錄都有多個記錄)

SELECT a.id,a.name, b.email FROM A a, B b WHERE a.id = 1 AND b.A_id = a.id 
+0

您使用的是什麼RDBMS? – hanleyhansen

+0

我正在使用SQL PHPMyAdmin – muaaz

+1

MySQL是一個RDBMS,PHPMyAdmin是一個工具 –

回答

0

,如果你只想要一個記錄您可以使用極限。

SELECT a.id,a.name, b.email FROM A a, B b WHERE a.id = 1 AND b.A_id = a.id LIMIT 0,1 

希望這有助於你。