[转]mysql的full join的实现
原文地址:https://blog.csdn.net/qq_1017097573/article/details/52638360
数据库多表查询主要有以下几种
inner join内连接查询,只有两个表都匹配才会显示记录
left /right [outer] join 左/右外连接 左表匹配右表,左表全部显示,结果中缺少的右表字段的值 则返回null,右外连接相反
full join 全连接,只要其中某个表存在匹配,就会返回行,不存在的字段返回null
自连接 就是虚拟出同一张表,在一张表上实现多表查询
【注意】:
在mysql里是不支持full join的
但仍然可以同过 左外连接+ union+右外连接 实现
例:
-
</pre><pre name="code" class="sql"> SELECT * FROM Persons p LEFT OUTER JOIN Orders o ON p.pid=o.pid
-
UNION
-
SELECT * FROM Persons p RIGHT OUTER JOIN Orders o ON p.pid=o.pid;