sql自学笔记(十五)——MySQL8.0版本的新特性(五)

2019-05-03  本文已影响0人  itczt

降序索引

先看一下在5.7当中执行的语法

创建一下表和索引

create table t2(c1 inr,c2 int,index idx1(c1 asc,c2 desc));

显示一下

show create table t2\G

如图所示虽然在语法中c1是升序,c2是降序,实际上创建的索引中它没有相应的信息,它都是默认的升序。

查询优化器对降序索引的使用情况

1.默认生成几条数据

insert into t2(c1,c2) values(1,100),(2,200),(3,150),(4,50);

显示一下

select * from t2;

查询优化器对降序索引的使用情况

explain select * from t2 orcler by c1 desc,c2;

执行相反查询c1降序,c2升序

explain select * from t2 by c1 desc,c2;

如图所示,它使用了反向索引扫描

对group by不再进行默认操作

select count(*),c2 from t2 group by c2;
在MySQL5.7中默认排序



而在新版本中要想使用group by排序

select count(*),c2 from to group by c2 order by c2; 
上一篇 下一篇

猜你喜欢

热点阅读