登陆

关于 FROM a,b 和 a LEFT JOIN b 的区别

例表a


aid adate


1 a1


2 a2


3 a3


表b


bid bdate


1 b1


2 b2


4 b4


两个表a,b相连接,要取出id相同的字段


select * from a ,b where a.aid = b.bid这是仅取出匹配的数据.


此时的取出的是:


1 a1 b1


2 a2 b2


那么left join 指:


select * from a left join b on a.aid = b.bid


首先取出a表中所有数据,然后再加上与a,b匹配的的数据


此时的取出的是:


1 a1 b1


2 a2 b2


3 a3 空字符


同样的也有right join


指的是首先取出b表中所有数据,然后再加上与a,b匹配的的数据


此时的取出的是:


1 a1 b1


2 a2 b2


4 空字符 b4

« 上一篇 | 下一篇 »