我正在查看以下链接 Left Join

如果左连接使用表 1 中的所有元素并且不关心表 2,为什么不直接写:

SELECT table1.column_name(s)
FROM table1

而不是写作
SELECT table1.column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name=table2.column_name;

最佳答案

人们并不关心 TABLE1 中的值,而且正如您所写的,并不关心 TABLE2 。就是关心 TABLE1 中的值以及 TABLE2 中的值(如果它们存在)。

假设您想要一份员工及其经理的报告。您不会仅仅因为您公司的总裁没有经理就将其排除在外。所以,你可以把它写成 LEFT OUTER JOIN

SELECT e.employee_name, m.employee_name manager_name
FROM   employees e
LEFT JOIN employees m ON m.employee_id = e.manager_id

这样,您将获得一行,其中包含您的总裁姓名和总裁的 NULL 经理姓名。如果你把它写成 INNER 连接,你根本就不会因为总统而争吵。

关于sql - 为什么要使用左连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39436507/

10-14 11:04