202109-30 mysql left join快速转inner join的过程 在日常优化过程中,发现一个怪事情,同一个SQL出现两个完全不一样执行计划,leftjoin连驱动表都可以变成不一样。对于leftjoin,如果where条件里有被关联表过滤,leftjoin有可能被转成innerjoin,本案例中shopInfo有ShopCategory='LOC'过滤条件;保证shopInfo的记录非NULL,因此leftjoin在优化过程中可以转为innerjoin。那么O和S的JOIN顺序就是可以交换的。验证结论:创建表:--班级表CREATETABLET_CLASS(class_idi... 继续阅读 >
202101-17 inner join和left join之间的区别详解 前言关于innerjoin与leftjoin之间的区别,以前以为自己搞懂了,今天从前端取参数的时候发现不是预想中的结果,才知道问题出在innerjoin上了。需求是从数据库查数据,在前端以柱形图的形式展现出来,查到的数据按行业分组,显示每个行业的户数及户数占比,涉及到的字段有A表的用户数、总用户数和B表的行业名称。本来是不管查不查的到数据,在X轴都应该显示行业名称的,结果是X、Y轴都没有任何数据显示。问题就是我用错了联结... 继续阅读 >