MYSQL order by排序导致效率低小优化
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,有一个主表left join 同一个小表两次分页语句,因为order by 导致执行时做排序,从执行计划中Using filesort ,以及profile中creating sort index 耗
千家信息网最后更新 2025年01月21日MYSQL order by排序导致效率低小优化
有一个主表left join 同一个小表两次分页语句,因为order by 导致执行时做排序,从执行计划中Using filesort ,以及profile中creating sort index 耗时可以看出。
从trace文件可以看出filesort的计算:
"join_execution": { "select#": 1, "steps": [ { "filesort_information": [ { "direction": "desc", "table": "`topxxx` `t`", "field": "create_date" } ] /* filesort_information */, "filesort_priority_queue_optimization": { "limit": 20, "rows_estimate": 2302749, "row_size": 264, "memory_available": 4194304, "chosen": true } /* filesort_priority_queue_optimization */, "filesort_execution": [ ] /* filesort_execution */, "filesort_summary": { "rows": 21, "examined_rows": 216594, "number_of_tmp_files": 0, "sort_buffer_size": 5712, "sort_mode": "" } /* filesort_summary */ } ] /* steps */ } /* join_execution */ }
后面通过索引加入排序字段后减去排序操作,排序字段放在索引的最前面。
create index idx_topxxx1 on topic (create_date desc,is_del,is_en);
trace 中可以看出排序使用了索引。
"reconsidering_access_paths_for_index_ordering": { "clause": "ORDER BY", "index_order_summary": { "table": "`topic` `t`", "index_provides_order": true, "order_direction": "desc", "index": "idx_topxxx1", "plan_changed": true, "access_type": "index" } /* index_order_summary */ } /* reconsidering_access_paths_for_index_ordering */ }, {
以此记录。
排序
索引
字段
文件
语句
效率
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
艾泰虚拟服务器
软件开发核算制度
安全狗会影响服务器速度吗
无人机安全精准数据库
数据库批量插数据
网络安全手抄报三年级简单少字
办公云服务器
沙迳服务器
在线教务管理系统数据库的作用
苏州网络技术咨询费用
瑞芯嵌入式软件开发
jsp页面间共享数据库
软件开发管理的好处
人工智能网络安全软件
数据库的备份流程
三国杀测试服无法连接服务器
服务器4t硬盘不兼容
国际服怎么换回亚洲服务器
未来教育三级网络技术视频
数字政府网络安全管理制度
网络安全之隐私安全
后端如何保存当前时间到数据库
软件开发png图标
网络技术分组交换的特点
bsp是指哪个数据库
深圳net软件开发费用是多少
网络安全杂项简称
宁波镇海附近金蝶服务器
河北特色软件开发价格比较
火狐解除网络安全