您好,匿名用户
随意问技术百科期待您的加入

为什么mysql表里order by id desc用不到索引?

0 投票

ID是自增主键,不知道为什么就是用不到索引,explain的时候rows扫的是全表,效率很低,换其他已经索引的列也不行,分页用到的order by。where 的时候可以用到索引,就是一order by就不行了,请教各位前辈~~~

这样可以用到索引:

SELECT * FROM `XXX` ORDER BY id DESC LIMIT 10,40;

这样用不到索引:

SELECT * FROM `XXX` ORDER BY id DESC LIMIT 10,41;

用不到索引:

SELECT * FROM `give` ORDER BY id desc LIMIT 400,20;

这样也用不到索引。。。:

SELECT * FROM `give` ORDER BY id desc;

update:现在库里有520rows,有朋友说是因为行数小于1000,索引mysql认为全表扫效率更高,是这样的吗?
但是慢查询日志里他效率确实不高啊!

是mysql配置的问题???tell me why,困惑了~~~

用户头像 提问 2013年 11月15日 @ Lucian 列兵 (86 威望)
分享到:

你的回答

隐私保护: 您的邮箱仅用于发送系统通知。
请输入验证码:
    图片验证码看不清?
登录注册后不会被要求输入验证码。

提一个问题:

相关问题

0 投票
0 回复 22 阅读
用户头像 提问 2012年 12月1日 @ Aries 上等兵 (238 威望)
0 投票
1 回复 36 阅读
用户头像 提问 2012年 12月1日 @ Graves 上等兵 (254 威望)
0 投票
1 回复 42 阅读
0 投票
0 回复 7 阅读
用户头像 提问 2014年 3月19日 @ Morgana 上等兵 (251 威望)
0 投票
1 回复 45 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...