内连接、左右连接和全连接的区别

内连接、左右连接和全连接的区别举例说明假设您有两个表,每个表只有一个列,表数据如下 AB13243546 注意,(1,2)是A表唯一的,(3,4)是公共的,并且(5,6)是B表独有的 内连接 内连接是A表的所有行交上B表的所有行得出的结果集 select*fromaINNERJOINbona.a=b.b;se…

举例说明

  • 假设您有两个表,每个表只有一个列,表数据如下
    A    B
    -    -
    1    3
    2    4
    3    5
    4    6
    

    注意,(1,2)是A表唯一的,(3,4)是公共的,并且(5,6)是B表独有的

    内连接

    内连接是A表的所有行交上B表的所有行得出的结果集

    select * from a INNER JOIN b on a.a = b.b;
    select a.*, b.*  from a,b where a.a = b.b;
    
    a | b
    --+--
    3 | 3
    4 | 4
    

    左外连接

    左外连接是A表的所有行匹配上B表得出的结果集

select * from a LEFT OUTER JOIN b on a.a = b.b;
select a.*, b.*  from a,b where a.a = b.b(+);

a |  b
--+-----
1 | null
2 | null
3 |    3
4 |    4

右外连接

右外连接是B表的所有行匹配上A表得出的结果集

select * from a RIGHT OUTER JOIN b on a.a = b.b;
select a.*, b.*  from a,b where a.a(+) = b.b;

a    |  b
-----+----
3    |  3
4    |  4
null |  5
null |  6

全连接

全连接是A表的所有行并上B表的所有行得出的结果集

select * from a FULL OUTER JOIN b on a.a = b.b;

 a   |  b
-----+-----
   1 | null
   2 | null
   3 |    3
   4 |    4
null |    6
null |    5

 

今天的文章内连接、左右连接和全连接的区别分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/6334.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注