SQL语句FULL JOIN

本文介绍了SQL中的FULL JOIN关键字及其用法。通过一个具体例子展示了如何使用FULL JOIN来获取两个表中所有行的数据,即使其中一个表在另一个表中没有匹配项也能显示。

SQL FULL JOIN 关键字
只要在其中某个表中存在匹配,FULL JOIN 关键字就会返回行。
- FULL JOIN 关键字语法

SELECT COLUMN_NAME(S) FROM TABLE_NAME1 FULL JOIN TABLE_NAME2 ON TABLE_NAME1.COLUMN_NAME=TABLE_NAME2.COLUMN_NAME

注释:在某些数据库中,FULL JOIN 称为FULL OUTER JOIN。


DUCK表:
DUCK_IDNAMEYEAR
HK234DUCK012016
DK244DUCK022016
KK134DUCK032016
MEAT表:
MEAT_IDKINDPRODUCTION_YEARDUCK_ID
LO23DUCK2016KK134
LO93DUCK2016DK244
LO03DUCK2016HK234
LO66DUCK2016CO134

全连接(FULL JOIN)实例
列出所有MEAT和DUCK数据

SELECT M.MEAT_ID,D.DUCK_ID,M.KIND,M.PRODUCTION_YEAR,D.YEAR FROM MEAT M FULL JOIN DUCK D ON M.DUCK_ID=D.DUCK_ID ORDER BY M.MEAT_ID;

结果:

MEAT_IDDUCK_IDKINDPRODUCTION_YEARYEAR
LO03HK234DUCK20162015
LO23KK134DUCK20162016
LO66DUCK2016
LO93DK244DUCK20162016

FULL JOIN 关键字会从左表 (MEAT) 和右表 (DUCK) 那里返回所有的行。如果 “MEAT” 中的行在表 “DUCK” 中没有匹配,或者如果 “DUCK” 中的行在表 “MEAT” 中没有匹配,这些行同样会列出。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值