数据库多张表链接操作

本文介绍了数据库的四种连接操作:内连接、左外连接、右外连接和全连接。通过具体的例子展示如何使用这些连接操作,解释了不同连接方式如何匹配和处理不同表之间的数据。
摘要由CSDN通过智能技术生成

一.创建数据库test1和test2如下:
test1结构:

这里写图片描述
test1数据:
这里写图片描述

test2结构:
这里写图片描述
test2数据:
这里写图片描述

二.连接操作

1.内连接,两张表通过对应的值进行比较,将相同或者满足一定条件的信息组织起来,有可能一张表中的一条数据连接另一张表中的多条数据。

select * from test1 t1,test2 t2 WHERE t1."id"=t2.test1;

select * from test1 t1 INNER JOIN test2 t2 ON t1."id"=t2.test1;

上面两条语句查询的结果如下:
这里写图片描述

2.左外连接,两张表按照左边表中的数据为准连接,左边表中的一条数据可能对应左边表中的多条数据,如果右边表中没有满足条件的数据,左边表中对应右边的数据以null代替。

select * from test1  t1 LEFT JOIN test2 t2 ON t1."id"=t2.test1;

select * from test1  t1 LEFT OUTER JOIN test2 t2 ON t1."id"=t2.test1;

上面两条查询结果一致:
这里写图片描述

3.右外连接,两张表按照右边表中的数据为准连接,右边表中的一条数据可能对应左边表中的多条数据,如果左边表中没有满足条件的数据,右边表中对应左边的数据以null代替。

select * from test1 t1 RIGHT JOIN test2 t2 ON t1."id"=t2.test1;

select * from test1 t1 RIGHT OUTER JOIN test2 t2 ON t1."id"=t2.test1;

上面两条查询结果一致:
这里写图片描述

4.全链接,按照左右表中的所有数据为准进行连接,如果表中一张表中没有找到另一张表中的数据以null代替。

select * from test1 t1 FULL OUTER JOIN test2 t2 on t1."id"=t2.test1;

查询结果:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值