比较好的介绍join left join right join full outer join的文章
https://www.cnblogs.com/reaptomorrow-flydream/p/8145610.html
可以通过你要得到的结果有没有可能出现null来判断是使用inner join(join)还是left join, right join, full outer join
然后on的作用:如果使用inner join,则是两个都满足条件的交集
如果使用left join,则是左边表的所有数据+右边表的满足on条件的数据,如果右边表的数据量《左边表的数据量,右边表缺失的数据,会以null的形式填充结果,如果右边表的数据量》左边表的数据量,则以左边表为准,不会将右边表的数据补充过去。
如果使用right join,则是右边表的所有数据+左边表的满足on条件的数据,如果右边表的数据量》左边表的数据量,左边表缺失的数据,会以null形式填充,如果右边表的数据量《左边表的数据量,则以右边表为准,不会将左边表的数据补充过去。