用了SQL那么久,left join、right join和join的区别还是分得不太清楚,所以特地网上冲浪了一下,找到一个图解,觉得柳暗花明又一村,豁然开朗。
一、left join
首先,left join应该是我最常用的,大概的用途也比较了解,和数学中的:A+A∩B应该说是可以等同的 ,通俗的说就是以表A为基表,找出表B中符合条件的数据与表A关联。
二、right join
而right join恰恰是与left join相对,等同于数学中的:A∩B+B。即以表B为基表,找出表A中符合条件的数据与表B关联。
三、join
join其实就是内联inner join,等同于数学中的:A∩B。即符合条件的表A与表B的数据,刨除不存在表A或不存在表B的其他的数据。