join left on多张表_实例演示 多表关联之left join

创建4张表a,b,c,d

4张表结构相同,a(id integer, n varchar2(10))

其中表的数据记录如下:

不同的查询,关联方式,查询的结果是不同的

第一种

select a.id, a.n a, b.n b, c.n c

from tmp_1 a

left join tmp_2 b

on a.id =

b.id

left join tmp_3 c

on

a.id =

c.id order by 1;

结果:

第二种

select a.id, a.n a, b.n b, c.n c

from tmp_1 a

left join tmp_2 b

on a.id =

b.id

left join tmp_3 c

on

b.id =

c.id order by 1;

结果:

可见,对应C表中的id=5的数据没有查询出来,因为b中没有。

第三种:带等值连接的

select a.id, a.n a, b.n b, c.n c, d.n d

from tmp_1 a

left join tmp_2 b

on a

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LEFT JOIN是一种连接操作,它会返回左中的所有记录,并将右中与左中的记录匹配的记录一起返回。如果右中没有与左中的记录匹配的记录,则返回NULL。\[1\] 在多关联中,可以使用LEFT JOIN来连接多个。例如,如果有三个tab1、tab2和tab3,可以使用以下语法进行左连接多关联: SELECT * FROM tab1 LEFT JOIN tab2 ON tab1.id = tab2.id LEFT JOIN tab3 ON tab1.id = tab3.id 这将返回tab1中的所有记录,并将与tab1中的记录匹配的tab2和tab3中的记录一起返回。如果tab2或tab3中没有与tab1中的记录匹配的记录,则返回NULL。\[2\] 在LEFT JOIN中,可以使用多个条件进行连接。例如,可以使用以下语法进行左连接多条件关联: SELECT * FROM tab1 LEFT JOIN tab2 ON tab1.id = tab2.id AND tab1.column1 = tab2.column1 LEFT JOIN tab3 ON tab1.id = tab3.id AND tab1.column2 = tab3.column2 这将返回tab1中的所有记录,并将与tab1中的记录匹配且满足额外条件的tab2和tab3中的记录一起返回。如果tab2或tab3中没有与tab1中的记录匹配且满足额外条件的记录,则返回NULL。\[2\]\[3\] #### 引用[.reference_title] - *1* [多联查--01---LEFT JOIN 实现多联查](https://blog.csdn.net/weixin_48052161/article/details/116072167)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [left join on多条件深度理解](https://blog.csdn.net/cxywangshun/article/details/124472945)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值