INNER JOIN、LEFT JOIN 和 RIGHT JOIN 是 SQL 中用于连接两个或多个表的常用操作,它们在数据查询中发挥着重要作用。

INNER JOIN (内连接)

INNER JOIN 返回两个表中匹配的记录,即只有当两个表中都存在相同字段的记录时才会被返回。

语法:

SELECT column1, column2, ...
FROM table1
INNER JOIN table2
ON table1.column = table2.column;

例如,以下 SQL 代码将返回 orders 表和 customers 表中都存在的记录:

SELECT *
FROM orders
INNER JOIN customers
ON orders.customer_id = customers.customer_id;

LEFT JOIN (左连接)

LEFT JOIN 返回左表(左侧表格)中的所有记录以及与右表匹配的记录。如果右表中没有与左表匹配的记录,则返回 NULL 值。

语法:

SELECT column1, column2, ...
FROM table1
LEFT JOIN table2
ON table1.column = table2.column;

例如,以下 SQL 代码将返回 customers 表中的所有记录以及与 orders 表中匹配的记录:

SELECT *
FROM customers
LEFT JOIN orders
ON customers.customer_id = orders.customer_id;

RIGHT JOIN (右连接)

RIGHT JOIN 与 LEFT JOIN 相反,返回右表(右侧表格)中的所有记录以及与左表匹配的记录。如果左表中没有与右表匹配的记录,则返回 NULL 值。

语法:

SELECT column1, column2, ...
FROM table1
RIGHT JOIN table2
ON table1.column = table2.column;

例如,以下 SQL 代码将返回 orders 表中的所有记录以及与 customers 表中匹配的记录:

SELECT *
FROM orders
RIGHT JOIN customers
ON orders.customer_id = customers.customer_id;

总结

  • INNER JOIN 返回两个表中都存在的匹配记录。
  • LEFT JOIN 返回左表中的所有记录以及与右表匹配的记录。
  • RIGHT JOIN 返回右表中的所有记录以及与左表匹配的记录。

根据实际需求选择不同的连接方式,以获得所需的数据结果。

SQL 连接操作详解:INNER JOIN、LEFT JOIN 和 RIGHT JOIN 的区别

原文地址: https://www.cveoy.top/t/topic/owDn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录