mysql全连接和oracle全连接查询的区别是什么

mysql全连接和oracle全连接查询区别

oracle的全连接查询可以直接用full on,但是在mysql中没有full join,mysql使用union实现全连接

oracle的全连接

select * from a full join b on a.id = b.id

mysql的全连接

select * from a left join b on a.id = b.id
union
select * from a right join b on a.id = b.id
  • 注:mysql利用左连接和右连接分别查询出左右两边的数据

  • 然后利用union去重合并(去掉两边都有的重复数据)

全连接就是要查询两个表查询结果的并集

内连接或者等值连接就是要查询两个表的交集

  • 左(外)连接

  • 右(外)连接

oracle中的全连接问题

数据库中的数据:

全连接:

完整外部联接返回左表和右表中的所有行。

当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。

如果表之间有匹配行,则整个结果集行包含基表的数据值。

select * from book as a full outer join stu as b on a.sutid = b.stuid

结果:

以上就是mysql全连接和oracle全连接查询的区别是什么的详细内容,更多请关注其它相关文章!