ホームページ  >  に質問  >  本文

关于mysql优化的问题

修改问题: 下面出现的问题貌似是我本地环境的问题, 换了个环境就可以了, 现在我想问问我的环境为什么会出现下面的情况 :(

最近学习数据库优化, 遇到不少不解的地方:

mysql查询数据时filesort什么情况下出现, 我创建如下表,

create table test (
    id int auto_increment primary key,
    name varchar(20),
    age tinyint
)

添加测试数据

insert into test (name, age) values 
('zhang', 8),
('wang', 18),
('li', 2),
('zhang', 12),
('zhao', 23),
('zhang', 7),
('li', 12),
('wang', 4)

然后执行

explain select * from test order by id

wKioL1guYhOjQXvkAAA8PZ7t7wQ318.png

这里的using filesort为什么会出现, 我看资料上有说当排序的字段不能使用索引时就会使用filesort, 但id不该是索引吗

高洛峰高洛峰2892日前718

全員に返信(1)返信します

  • 三叔

    三叔2016-11-19 13:30:01

    http://s.petrunia.net/blog/?p=24,其中特别谈到了filesort与order by的关系。

    返事
    0
  • キャンセル返事