前情提要:and 则是在表连接前过滤A表或B表里面哪些记录符合连接条件,同时会兼顾是left join还是right join。即
假如是左连接的话,如果左边表的某条记录不符合连接条件,那么它不进行连接,但是仍然留在结果集中(此时右边部分的连接结果为NULL)。on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。
这句话是关于MySQL中的表连接操作,特别是left join和right join。表连接是一种将两个或多个表的数据组合在一起的方法,通常需要指定一个连接条件,即哪些字段或列是相等或匹配的。例如,如果有两个表a和b,它们都有一个sid列,那么可以用下面的语句连接它们:
select * from a join b on a.sid = b.sid;
这里的on子句就是连接条件,它表示只有当a表和b表的sid列相等时,才会将两个表的记录组合在一起。这种连接方式叫做inner join,它只会返回满足连接条件