问题:
再写关联查询的时候,添加一个新的关联表,并且把关联字段分别创建了索引,执行后发现需要查询30秒左右,通过explain执行计划知道该索引没有生效
?explain select ? ? ? ? sum(ul.remain_hour) remain_hour, ? ? ? ? ul.user_id user_id, ? ? ? ? ul.name name, ? ? ? ? sd.dept_name depart_name, ? ? ? ? sd.id depart_id ? ? ? ? from oct_hr_overtime_apply ul ? ? ? ? left join sys_user su on su.id=ul.user_id ? ? ? ? left join sys_dept sd on su.dept_id = sd.id ? ? ? ? left join oct_hr_record hr on hr.number=su.record_no? group by ul.user_id;
红色为新增的部门,一直在分析number索引列为何会失效
后来网上看到一个博客,说关联字段的字符集不一样会导致索引失效,最后改了一下字符集,立马可以了
?
?
|