在我们查询sql 的时候,有时候查询速度很慢,这时候我们就需要通过EXPLAIN 来获取MySQL如何实行SELECT语句的信息,来判断应该优化哪里.
EXPLAIN
select t.id,t.name,r.result from zt_task t,tiz_zentao_result r
WHERE r.object_id = t.id and r.action='finished' and t.deleted = '0' and t.id
IN
(SELECT id FROM zt_task where (status='done' or status='closed') AND finishedBy = (
SELECT account FROM tiz_zentao_integral_user where user_id = 'UBcZBhXJ3WXn7dAaVZyaLA')) AND r.object_type='task'
下面就是这个sql的执行计划信息
首先我们需要知道每个字段的意思
再来分析这条语句的执行计划
该如何优化?