gpt4 book ai didi

mysql - 如何使用同一张表在 2 个字段上进行左连接

转载 作者:行者123 更新时间:2023-12-05 03:22:37 25 4
gpt4 key购买 nike

我有以下 fiddle :

https://www.db-fiddle.com/f/TSmNDk3rMUtYCi8NNVJND/0

我的目标是在两个字段上左联接但使用同一个表。

这是我的两个表结构。

-------------
| Tab1 |
-------------
| id |
| group1_id |
| group2_id |
-------------


--------------
| groupTable |
--------------
| id |
| name |
--------------

例如,这里有一些数据:

标签 1:

------------------------------
| id | group1_id | group2_id |
------------------------------
| 1 | 3 | 1 |
| 2 | 3 | 2 |
| 3 | 1 | 3 |
------------------------------

组表:

--------------
| id | name |
--------------
| 1 | cars |
| 2 | bikes |
| 3 | boats |
--------------

预期结果:

------------------------
| id | group1 | group2 |
------------------------
| 1 | boats | cars |
| 2 | boats | bikes |
| 3 | cars | boats |
------------------------

我的测试请求在 fiddle 中

最佳答案

好吧,同一个表可以 LEFT JOIN 两次。

查询是:

SELECT Tab1.id, g1.name AS group1, g2.name AS group2
FROM Tab1
LEFT JOIN groupTable g1 ON Tab1.group1_id = g1.id
LEFT JOIN groupTable g2 ON Tab1.group2_id = g2.id

DB Fiddle 已更新:https://www.db-fiddle.com/f/TSmNDk3rMUtYCi8NNVJND/1

关于mysql - 如何使用同一张表在 2 个字段上进行左连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72684311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com