数据库中的连接操作

在数据库中,用的最多的连接操作分为三种:左外连接、右外连接和全外连接。这里只总结其基本用法。

1、左外连接

对应的SQL语句:left (outer)join,outer可以省略。

表示的含义:例如:A、B两张表,A表为基础表,B表为补充表,则:

select * from A left join B on A.id = B.id(理解为A加到B的左边)。

用 + 来表示:select * from A , B where A.id = B.id(+)   [+在哪边,哪边就是补充表,即A为基础表,B为补充表,A表的数据全部显示,B表的数据只有与A表相匹配的才显示,不匹配的均为NULL]

2、右外连接

对应的SQL语句:right(outer)join,outer可以省略。

表示的含义:select * from A right join B on A.id = B.id(理解为A加到B的右边)

用 + 表示:select * from A , B where A.id(+) = B.id [即B为基础表,A为补充表。B的数据全部显示,A的数据只显示与B匹配的,不匹配的均为NULL]

总结:

①左、右外连接中,+ 号在哪个表中,哪个表就是补充表,+ 号在左,就是右连接;+ 号在右,就是左连接。

② (+) 号的SQL语句和 left/right join语句是不同的,left/right join 可以和on连用,而 + 只能出现在where子句中。

③ (+) 号只适用于列,而不能用在表达式中。

④ (+) 号只能用于左外连接、右外连接,而不能用于实现完全外链接

3、完全外链接

对应的SQL语句:select * from  A full (outer) join B on A.id = B.id 

表示的含义:左表和右表都不做限制,所有的记录都显示,两表不足的地方均为NULL,全外连接不能用 (+) 表示。

学习链接:http://www.cnblogs.com/hehaiyang/p/4745897.html

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值