[英]MYSQL: How to JOIN two tables on the same query referencing the same table twice
我有兩張桌子。 我試圖將下面的兩個示例表與表1結合起來,兩次引用表2。 例如,如果我查看表1:第2組和成員7,則應在表2中查找ID,並提供以下輸出:
Group Members Name Name
2 7 Blue Dog
表格1
Group Members
2 7
3 8
5 10
表2
ID Name
1 Green
2 Blue
3 Yellow
4 Orange
5 Red
6 Elephant
7 Dog
8 Cat
9 Chicken
10 Mouse
有什么建議嗎? 謝謝
SELECT
Table_1.*,
g.Name,
m.Name
FROM
Table_1
INNER JOIN Table_2 AS g ON Table_1.Group=g.ID
INNER JOIN Table_2 AS m ON Table_1.Group=m.ID
WHERE
Table_1.Group=2
AND Table_1.Member=7
與表2在不同的列上連接兩次。
SELECT t1.*, t2.name AS group_name, t3.name AS member_name
FROM Table1 AS t1
JOIN Table2 AS t2 ON t1.group = t2.id
JOIN Table2 AS t3 ON t1.members = t3.id
很難從該描述中准確判斷出您需要什么,但是對表進行別名可能就是您所需要的。 它是這樣的:
SELECT t1.x, t2_1.y, t2_2.z
FROM table1 AS t1
JOIN table2 AS t2_1 ON t1.whatever = t2_1.whatever
JOIN table2 AS t2_2 ON t1.whatever = t2_2.whatever
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.