你如何在mysql中加入同一個表,兩次?我有2張桌子。一個(域)具有域ID和域名(dom_id,dom_url)。另一個包含實際數(shù)據(jù),其中2個列需要TO和FROM域名。所以我有兩列rev_dom_from和rev_dom_for,兩者都存儲域表中的域名id。簡單?,F(xiàn)在我需要在網頁上實際顯示兩個域名。我知道如何通過LEFT JOIN域ON review.rev_dom_for = domains.dom_url查詢顯示其中一個,然后你回顯出dom_url,它將回顯rev_dom_for列中的域名。但是我如何讓它在dom_rev_from列中回顯出第二個域名呢?
3 回答

蕭十郎
TA貢獻1815條經驗 獲得超13個贊
你會使用另一個連接,這些都是這樣的:
SELECT toD.dom_url AS ToURL, fromD.dom_url AS FromUrl, rvw.*FROM reviews AS rvwLEFT JOIN domain AS toD ON toD.Dom_ID = rvw.rev_dom_forLEFT JOIN domain AS fromD ON fromD.Dom_ID = rvw.rev_dom_from
編輯:
您所做的只是多次加入表格。查看帖子中的查詢:它從Reviews表中選擇值(別名為rvw),該表為您提供了2個對Domain表的引用(FOR和FROM)。
此時,將Domain表連接到Reviews表是一件簡單的事情。一次(別名為D)表示FOR,第二次(別名為D)表示FROM。
然后在SELECT列表中,您將從DOMAIN表的兩個LEFT JOINS中選擇DOM_URL字段,通過每個參與Domains表引用的表別名引用它們,并將它們別名為ToURL和FromUrl。
有關SQL中別名的更多信息,請閱讀此處。

www說
TA貢獻1775條經驗 獲得超8個贊
閱讀本文并嘗試,這將有助于您:
表格1
column11,column12,column13,column14
表2
column21,column22,column23,column24SELECT table1.column11,table1.column12,table2asnew1.column21,table2asnew2.column21 FROM table1 INNER JOIN table2 AS table2asnew1 ON table1.column11=table2asnew1.column21 INNER TABLE table2 as table2asnew2 ON table1.column12=table2asnew2.column22
table2asnew1
是表2的一個實例,它與之匹配 table1.column11=table2asnew1.column21
和
table2asnew2
是表2的另一個實例,它與之匹配 table1.column12=table2asnew2.column22
添加回答
舉報
0/150
提交
取消