gpt4 book ai didi

mysql - 使用 SELECT - JOIN 从同一个表中获取两个值

转载 作者:太空宇宙 更新时间:2023-11-03 11:30:23 25 4
gpt4 key购买 nike

我有三个表 - Material 、事件和单位。 Material 表和事件表都通过包含 unit_id 属性与单位表相关。如何通过单个查询同时获取事件单位和 Material 单位?

这是我当前的查询:

SELECT u.username, m.name, a.name, un.name
FROM users u
JOIN materials m
ON (m.id = u.material_id)
JOIN activities a
ON (a.id = u.activity_id)
JOIN units un
ON (un.id = m.unit_id OR un.id = a.unit_id)

但是我只返回一个单位,我想同时获得 Material 单位和事件单位。我如何实现这一目标?

最佳答案

两次加入units

SELECT u.username, 
m.name as m_name, unm.name as m_unit,
a.name as a_name, una.name as a_unit
FROM users u
JOIN materials m ON m.id = u.material_id
JOIN activities a ON a.id = u.activity_id
JOIN units unm ON unm.id = m.unit_id
JOIN units una ON una.id = a.unit_id

关于mysql - 使用 SELECT - JOIN 从同一个表中获取两个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50530196/

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