2011-08-18 100 views
0

我有2個表格:Help with MySQL JOIN語句

表A是一個類別表。列是cid, catname

表B是關係表。列是cid, parentparent是另一個cid)。

這裏就是我至今:

"SELECT c.cid, c.catname AS catname, r.parent AS parent FROM tableA AS c JOIN tableB AS r ON r.cid=c.cid"; 

我知道我會得到3列(2從tableA,一個來自tableB),但我也想在tableA如果從parentcatname值我是做了第二次查詢時,它看起來像這樣(假設我們把結果變成$row變量):

"SELECT catname FROM tableA WHERE cid='".$row['parent']."'"; 

這樣我可以顯示爲文本。

我要添加什麼,以及在哪裏?是否有第二個JOIN

回答

2

您可以加入一個表多次:

SELECT a.cid AS acid, a.catname AS aname, 
     b.cid AS bcid, b.catname AS bname 
FROM relationships AS r 
    JOIN categories AS a ON (r.cid = a.cid) 
    JOIN categories AS b ON (r.parent = b.cid) 
+0

謝謝!我不相信我真的明白你是怎麼做到的。我必須學習一些東西:) –