MySQL如何利用索引优化ORDER BY排序语句
2016-11-29 10:30
801 查看
官网排序优化:http://dev.mysql.com/doc/refman/5.5/en/order-by-optimization.html
MySql创建索引时支持ASC或DESC排序。
下面举例
创建表时同时创建索引降序排序(sname 字段上普通索引降序)
create table tbl1 (
id int unique, sname varchar(50),
index tbl1_index_sname(sname desc)
);
在已有的表创建索引语法
create [unique|fulltext|spatial] index 索引名
on 表名(字段名 [长度] [asc|desc]);
MySQL也能利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作。
通过索引优化来实现MySQL的ORDER BY语句优化:
1、ORDER BY的索引优化。如果一个SQL语句形如:
SELECT [column1],[column2],…. FROMORDER BY [sort];WHERE [columnX] = [value] ORDER BY [sort];WHERE [columnX] IN ([value1],[value2],…) ORDER BY[sort];WHERE uid=1 ORDER x,y LIMIT 0,10;
MySql创建索引时支持ASC或DESC排序。
下面举例
创建表时同时创建索引降序排序(sname 字段上普通索引降序)
create table tbl1 (
id int unique, sname varchar(50),
index tbl1_index_sname(sname desc)
);
在已有的表创建索引语法
create [unique|fulltext|spatial] index 索引名
on 表名(字段名 [长度] [asc|desc]);
MySQL也能利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作。
通过索引优化来实现MySQL的ORDER BY语句优化:
1、ORDER BY的索引优化。如果一个SQL语句形如:
SELECT [column1],[column2],…. FROM