sql表连接的几种方式

640?wx_fmt=gif

一.SQL 左外连接,右外连接,全连接,内连接

表结构

a表 id name b表 id job parent_id 
    1  张三      1 23   1 
    2  李四      2 34   2 
    3  王武      3 34   4

a.id同parent_id 存在关系

内连接

inner join与join的结果是一样的 

1 张3 1 23 1 
2 李四 2 34 2
左连接

select a.,b. from a left join b on a.id=b.parent_id

1 张3 1 23 1 
2 李四 2 34 2 
3 王武 null
右连接

select a.,b. from a right join b on a.id=b.parent_id

1 张3 1 23 1 
2 李四 2 34 2 
null 3 34 4
完全连接

select a.,b. from a full join b on a.id=b.parent_id

1 张3 1 23 1 
2 李四 2 34 2 
null 3 34 4 
3 王武 null

注意:join 默认结果等于inner join

二、自然连接

natural join:自然连接(不允许带on/using) 

select * from tb_test1 natural join tb_student; 
+—-+——–+——–+——-+————+ 
| id | name | gender | score | birthday | 
+—-+——–+——–+——-+————+ 
| 1 | 李毅 | 男 | 95.30 | 1988-03-20 | 
+—-+——–+——–+——-+————+

select * from tb_test1 natural left join tb_student; 
+—-+———–+——–+——-+————+ 
| id | name | gender | score | birthday | 
+—-+———–+——–+——-+————+ 
| 1 | 李毅 | 男 | 95.30 | 1988-03-20 | 
| 2 | 二丫 | 女 | 95.30 | NULL | 
| 3 | 张三 | 女 | 95.30 | NULL | 
| 4 | 李四 | 女 | 95.30 | NULL | 
| 7 | 胡鲁瓦 | 男 | 95.30 | NULL | 
| 9 | 后羿 | 男 | 95.30 | NULL | 
+—-+———–+——–+——-+————+

select * from tb_test1 natural right join tb_student; 
+—-+——–+——–+————+——-+ 
| id | name | gender | birthday | score | 
+—-+——–+——–+————+——-+ 
| 1 | 李毅 | 男 | 1988-03-20 | 95.30 | 
| 2 | kevin | 男 | 1987-08-23 | NULL | 
| 3 | marry | 女 | 1989-11-25 | NULL | 
| 4 | lucy | 女 | 1989-11-25 | NULL | 
| 5 | lily | 女 | 1992-01-25 | NULL | 
+—-+——–+——–+————+——-+

笛卡尔乘积 TableB的行数的结果集。(TableA 3行TableB 3行=9行)

原文:
https://blog.csdn.net/sinat_34814635/article/details/78688008 

推荐一个 Python实战圈

640?wx_fmt=png

基础】0基础入门python,24小时有人快速解答问题;
【提高】40多个项目实战,老手可以从真实场景中学习python;
【直播】不定期直播项目案例讲解,手把手教你如何分析项目;
【分享】优质python学习资料分享,让你在最短时间获得有价值的学习资源;圈友优质资料或学习分享,会不时给予赞赏支持,希望每个优质圈友既能赚回加入费用,也能快速成长,并享受分享与帮助他人的乐趣。
【人脉】收获一群志同道合的朋友,并且都是python从业者
【价格】本着布道思想,只需 69元 加入一个能保证学习效果的良心圈子。

【赠予】后续圈主将开发python,0基础入门在线课程,免费送给圈友们,供巩固和系统化复习

(三重福利)最近入圈送大礼包:

1、2.7G、308份最新数据分析报告
2、40G 人工智能算法  视频课
3、Python爬虫课,共14课时(视频+PPT全套

640?wx_fmt=jpeg

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值