mysql怎样运用索引?【MySQL教程】,mysql
作者:搜教程发布时间:2019-12-01分类:MySQL教程浏览:22评论:0
导读:在排序操纵中假如能运用到索引来排序,那末能够极大的进步排序的速率,要运用索引来排序须要满足以下两点即可。1、ORDERBY子句后的列递次要与组合索引的列递次一致,且一切排...
在排序操纵中假如能运用到索引来排序,那末能够极大的进步排序的速率,要运用索引来排序须要满足以下两点即可。
1、ORDER BY子句后的列递次要与组合索引的列递次一致,且一切排序列的排序方向(正序/倒序)需一致
2、所查询的字段值须要包含在索引列中,及满足掩盖索引
引荐课程:MySQL教程。
经由过程例子来具体分析
在user_test表上建立一个组合索引
ALTER TABLE user_test ADD INDEX index_user(user_name , city , age);
能够运用到索引排序的案例
SELECT user_name, city, age FROM user_test ORDER BY user_name; SELECT user_name, city, age FROM user_test ORDER BY user_name, city; SELECT user_name, city, age FROM user_test ORDER BY user_name DESC, city DESC; SELECT user_name, city, age FROM user_test WHERE user_name = 'feinik' ORDER BY city;
注:第4条sql语句比较特别一点,假如where查询前提为索引列的第一列,且为常量前提,那末也能够运用到索引。
没法运用索引排序的案例
sex不在索引列中
SELECT user_name, city, age FROM user_test ORDER BY user_name, sex;
排序列的方向不一致
SELECT user_name, city, age FROM user_test ORDER BY user_name ASC, city DESC;
所要查询的字段列sex没有包含在索引列中
SELECT user_name, city, age, sex FROM user_test ORDER BY user_name;
where查询前提后的user_name为局限查询,所以没法运用到索引的其他列
SELECT user_name, city, age FROM user_test WHERE user_name LIKE 'feinik%' ORDER BY city;
以上就是mysql怎样运用索引?的细致内容,更多请关注ki4网别的相干文章!
标签:mysql
相关推荐
- 如何修改mysql的默认时区_MySQL教程,mysql,时区
- mysql数据库如何创建数据表_MySQL教程,mysql,数据表
- linux源码安装mysql5.7_MySQL教程,linux,mysql,mysql5.7
- mysql外键约束怎么写_MySQL教程,mysql,外键约束
- mysql如何设置字符集为UTF8_MySQL教程,mysql,UTF8,字符集
- mysql怎么创建数据库_MySQL教程,mysql,数据库
- 如何查看mysql的日志文件_MySQL教程,mysql,日志文件
- mysql如何删除表中一行数据?_MySQL教程,mysql
- access是数据库管理系统吗_MySQL教程,access,mysql
- mysql修改字段类型有哪些?_MySQL教程,mysql,修改字段
你 发表评论:
欢迎- MySQL教程排行
-
- 1必学!MySQL数据库查询之limit的使用方法_MySQL教程,mysql
- 2mysql索引介绍_MySQL教程,mysql,索引,介绍
- 3一文详解mysql视图_MySQL教程,mysql,视图
- 4Mysql如何挂盘_MySQL教程,Mysql
- 5开启mysql慢查询日志的方法_MySQL教程,开启,mysql,慢查询,日志,方法
- 6mysql实现linux下数据库目录迁移_MySQL教程,mysql,linux,数据库,目录,迁移
- 7mysql中key 、primary key 、unique key 与index区别详解_MySQL教程,mysql
- 8分离数据库和附加数据库的区别_MySQL教程,数据库
- 9关于linux下mysql去除严格模式_MySQL教程,linux
- 最新文章
- 广而告之