雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

SQL inner join、left join和right join的区别

2024-07-02 101

INNER JOIN、LEFT JOIN 和 RIGHT JOIN 是SQL中用于联结表的不同类型的操作。

INNER JOIN

INNER JOIN 是最常用的联结操作,它会返回两个表中符合联结条件的交集。只有当两个表中的行在联结条件下匹配时,才会包含在结果集中。

SELECT * 
FROM table1
INNER JOIN table2 ON table1.column = table2.column;

LEFT JOIN

LEFT JOIN 也被称为左外连接,它会返回左表中所有的行,以及右表中符合联结条件的行。如果右表中没有匹配的行,那么在结果集中会显示 NULL 值。

SELECT * 
FROM table1
LEFT JOIN table2 ON table1.column = table2.column;

RIGHT JOIN

RIGHT JOIN 也被称为右外连接,它与左外连接相反,会返回右表中所有的行,以及左表中符合联结条件的行。如果左表中没有匹配的行,那么在结果集中会显示 NULL 值。

SELECT * 
FROM table1
RIGHT JOIN table2 ON table1.column = table2.column;

区别总结

INNER JOIN 只返回两个表中在联结条件下完全匹配的行,没有匹配的行将被排除。

LEFT JOIN 返回左表中的所有行,以及右表中匹配的行(如果没有匹配的行,会以 NULL 值填充)。

RIGHT JOIN 返回右表中的所有行,以及左表中匹配的行(如果没有匹配的行,会以 NULL 值填充)。

通常来说,INNER JOIN 最常用,因为它会返回两个表之间的交集,而 LEFT JOIN 和 RIGHT JOIN 在特定情况下会更有用,例如需要包含某个表的所有行,而另一个表中只需要匹配的部分。

更新于:4个月前
赞一波!3

文章评论

评论问答