问题遇到的现象和发生背景
查询主表然后在里面进行排序,然后在作为结果进行子查询进行group by 以及 order by
问题相关代码,请勿粘贴截图
EXPLAIN SELECT * FROM (
SELECT t1.*
FROM leave_record_pre t1
ORDER BY t1.create_time DESC
) t
GROUP BY t.mark_id
, t.`pre_audit_status`
ORDER BY t.pre_audit_status ASC
, t.create_time DESC
;
运行结果及报错内容
运行用时3秒多
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> ALL (NULL) (NULL) (NULL) (NULL) 265471 Using temporary; Using filesort
2 DERIVED t1 ALL (NULL) (NULL) (NULL) (NULL) 265471 Using filesort
我的解答思路和尝试过的方法
我想要达到的结果
1秒内查询结果