gpt4 book ai didi

mysql - 卡住mysql left join

转载 作者:行者123 更新时间:2023-11-29 05:28:55 26 4
gpt4 key购买 nike

我想请教以下几个问题:

有 3 个表,我想将字段 type-id 上的值 tbl1 与表中的 id 匹配

类型。我希望得到的结果是列出每个组 ID 的所有类型名称的结果。

TB1 
Gid TypeID Value
1 1 5
1 2 10
2 3 6

TBLTYPE
ID NAME
1 A
2 B
3 C
4 D
5 E


RESULT that i need

Type value
A 5
B 10
C
D
E
A
B
C 6
D
E

最佳答案

试试这个查询

select  
tmp.name,
tmp.gid,
a.value
from
(select
a.*,
b.*
from
(select
distinct gid
from
tbl1 a
)a,
tbl2 b
) tmp
left join
tbl1 a
on
a.typeid=tmp.id and
a.gid = tmp.gid
order by --OPTIONAL PART
tmp.gid

编辑

派生表 tmp 是此查询的主表,通过具有唯一 gid 和 tbl2 日期的交叉连接派生,它为每个用户提供与每个组相关联的日期。 tmp 表与 tbl1 左连接,该表给出了所需的表。您可以在 fiddle 中单独运行每个派生表以了解其正常工作。

Fiddle (为了正确理解,每个查询都单独提及)

FIDDLE

| NAME | GID |  VALUE |
-----------------------
| A | 1 | 5 |
| B | 1 | 10 |
| C | 1 | (null) |
| D | 1 | (null) |
| E | 1 | (null) |
| A | 2 | (null) |
| B | 2 | (null) |
| C | 2 | 6 |
| D | 2 | (null) |
| E | 2 | (null) |

关于mysql - 卡住mysql left join,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16853679/

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