gpt4 book ai didi

sql - 是否可以在左侧部分始终为空的地方编写右外连接?

转载 作者:行者123 更新时间:2023-11-29 11:38:18 25 4
gpt4 key购买 nike

这是我想要的例子。

我们有 2 个表 - 用户和部门

users:
id name d_id
1 Alice 1
2 Bob 1

departments:
id name
1 Sales
2 Support

接下来,我编写通常的右连接:

SELECT u.id, u.name, d.name AS d_name
FROM users u
RIGHT OUTER JOIN departments d ON u.d_id = d.id

它返回:

id      name        d_name
-- -------- ---------
1 Alice Sales
2 Bob Sales
NULL NULL Support

是否可以编写返回下一个结果的查询?

id      name        d_name
-- -------- ---------
1 Alice Sales
2 Bob Sales
NULL NULL Sales
NULL NULL Support

最佳答案

您似乎想要UNION ALL:

SELECT u.id, u.name, d.name AS d_name
FROM users u JOIN
departments d
ON u.d_id = d.id
UNION ALL
SELECT NULL, NULL, d.name
FROM departments d
ORDER BY id NULLS LAST;

第一个子查询不需要外连接。

关于sql - 是否可以在左侧部分始终为空的地方编写右外连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42001694/

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