首页/数据/SQL 速查/RIGHT JOIN 右外连接
本包目录(311 条)

RIGHT JOIN 右外连接

保留右表全部行,左表无匹配补 NULL;可读性不如把两表交换后用 LEFT JOIN,团队规范里常要求统一成 LEFT JOIN。

SQL 速查数据更新于 2026-10-12

示例与等价改写

示例与等价改写
-- 保留 users 全部行
SELECT u.id, u.name, o.id AS order_id
FROM orders o
RIGHT JOIN users u ON u.id = o.user_id;

-- 等价写法:交换两表顺序改用 LEFT JOIN(更常见的写法)
SELECT u.id, u.name, o.id AS order_id
FROM users u
LEFT JOIN orders o ON o.user_id = u.id;
保留侧右表全部行
未匹配左表列补 NULL
实践多表混合时用 LEFT JOIN 链条更易读

易错点

  • RIGHT JOIN 混在多表连接里容易搞错保留侧,规范做法是统一改写成 LEFT JOIN
  • 调整连接顺序时左右保留侧会级联变化,改前先在测试库核对行数

数据来源与参考

  • MySQL 8.0 Reference Manual · RIGHT JOIN
  • PostgreSQL Documentation · RIGHT OUTER JOIN
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌