Sql语句 是一种可以用不同逻辑获取大量数据的语言。在企业环境中,我们可能需要使用复杂的 SQL语句 查询以获取有意义的数据。内部是我们用不同的魔法连接两个表的逻辑之一。
null
示例表
为了理解内部联接和外部联接,我们将使用下面的示例表及其数据。我们将使用两个表 Personels
和 Persons
MariaDB [test]> SELECT LastName FROM Personels; +----------+ | LastName | +----------+ | C | | D | | E | +----------+ 3 rows in set (0.00 sec)
MariaDB [test]> SELECT LastName FROM Persons; +----------+ | LastName | +----------+ | A | | B | | C | | NULL | +----------+ 4 rows in set (0.00 sec)
内部连接
如果我们把人和人连在一起,我们就只能得到给定域的交集。在这个例子中,我们想要得到 LastName
两个表中的列交集 Persons
和 Personels
.
> SELECT Persons.LastName FROM Persons INNER JOIN Personels on Persons.LastName = Personels.LastName; +----------+ | LastName | +----------+ | C | +----------+ 1 row in set (0.00 sec)
赖特 外部连接
右外联接将返回左表和左表中的所有条目
> SELECT Persons.LastName FROM Persons RIGHT OUTER JOIN Personels on Persons.LastName = Personels.LastName; +----------+ | LastName | +----------+ | C | | NULL | | NULL | +----------+ 3 rows in set (0.00 sec)
左 外部连接
> SELECT Persons.LastName FROM Persons LEFT OUTER JOIN Personels on Persons.LastName = Personels.LastName; +----------+ | LastName | +----------+ | C | | A | | B | | NULL | +----------+ 4 rows in set (0.00 sec)
内连接和外连接有什么区别?信息图

相关文章: MySQL的默认端口号是什么?
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END