2013-04-30 158 views
0

您好,我有一个很难试图选择的是我的两个表中需要的信息,下面两个表:从MySQL数据库中选择查询

Person: |id|fname|mname|lname| and Related: |id1|id2|relationship| 

,我想下面要显示回来自SELECT查询:

|id1|fname(of id1)|id2|fname(of id2)|relationship| 

SO相关表有两个ID所外键的人(ID),我需要 SELECT ID1,(ID1的名字),ID2(ID2的名字),和关系。

我已经试过这样的事情和其他一些SELECT查询,但我似乎无法得到它的工作:

SELECT p.fname, r.id1, r.id2, r.relationship 
FROM Person p, Related r 
INNER JOIN Related ON first.id = r.id1 
INNER JOIN Related ON second.id = r.id2; 

任何帮助将不胜感激!谢谢!

回答

1

你即将加入的Related三次。你只需要参加一次,你需要重新加入上Person

SELECT id1, p1.fname, id2, p2.fname, relationship 
FROM Person p1 
JOIN Related ON (p1.id = id1) 
JOIN Person p2 ON (id2 = p2.id) 
+0

非常感谢你这工作会,只要我能接受是公认的答案! – Baraa 2013-04-30 04:06:18

0

我发现一个网站,你(W3Schools的),它应该有你需要的SELECT功能你想获得的所有信息。希望这有助于: http://www.w3schools.com/php/php_mysql_select.asp

+0

对不起,我忘了,包括链接马上 – Max 2013-04-30 04:02:18

+1

是的,我确实知道W3Schools的,我已经贯穿东西搜查,我做这工作根据的事情,我从那里学到其他疑问...但这个查询我只是不能去工作,但感谢信息! – Baraa 2013-04-30 04:07:11

+0

那好,你知道关于我们W3Schools – Max 2013-04-30 04:15:40