mysql排序索引优化
2024-10-18 02:10:03
为排序使用索引
KEY a_b_c (a,b,c)
order by 能使用索引最左前缀
-order by a
-order by a,b
-order by a,b,c
-order by a desc,b desc,c desc
如果where使用索引的最左前缀定义为常量,则order by能使用索引
-where a=const order by b,c
-where a=const and b=const order by c
-where a=const order by b,c
-where a=const and b>const order by b,c
不能使用索引进行排序
-order by a asc,b desc,c desc //排序不一致
-where g=const order by b,c //丢失a索引
-where a=const order by c //丢失b索引
-where a=const order by a,d //d不是索引的一部分
-where a in (...) order by b,c //对于排序来说,多个相等条件也是范围查询
GROUP BY 关键字优化
1、group by 实质是先排序后分组,遵照索引的最佳左前缀。
2、当无法使用索引列,增大max_length_for_sort_data参数的设置+增大sort_buffer_size参数的设置
3、where 高于having,能写在where限定的条件就不要去having去限定了。
最新文章
- service 03 iis之服务器无访问权限
- tmux常用命令
- 重置mysql数据库密码相关方法
- ML 03、机器学习的三要素
- 解决Android抽屉被击穿问题
- 详解在Visual Studio中使用git版本系统
- CentOS的ssh sftp配置及权限设置(流程相当完整)(关闭了SElinux才能上传了)
- zoj2314(有上下界的网络流)
- Log4j配置文件位置+Spring数据源配置文件位置
- 1.1 java学习网站
- 利用Socket与硬件通信(智能家居)
- Apache shiro集群实现 (三)shiro身份认证(Shiro Authentication)
- [Alpha阶段]测试报告
- cetos6.8配置svn服务器
- Spring Boot 2.x(十三):你不知道的PageHelper
- XII Open Cup named after E.V. Pankratiev. GP of Eastern Europe (AMPPZ-2012)
- 洛谷P3810 陌上花开 CDQ分治(三维偏序)
- 使用 ButterKnife 操作无效(不报错、点击后没效果)------代码编写错误
- Golang学习系列:(一)介绍和安装
- 【ZABBIX】SNMPtrap实现主动监控的原理与安装配置