order by字段建索引有作用吗

 我来答
pyl_EF
推荐于2018-05-11 · TA获得超过1.4万个赞
知道小有建树答主
回答量:2719
采纳率:96%
帮助的人:154万
展开全部
mysql的order by语句,如果在where条件中没有合适的索引选择时,将会选择order by col中的索引作为条件,但是如果是多个order by组合,将会导致放弃使用索引。和开发以及需求沟通,发现通过名字排序是可以不需要的。再次对比两次profiling(过程省略),发现第一次损坏大量io和cpu时间Sorting result上!因为该语句为前台语句,有大量查询,优化后,页面打开速度明显提升。
东独餐晗丫1w
2018-07-25 · TA获得超过518个赞
知道小有建树答主
回答量:392
采纳率:92%
帮助的人:250万
展开全部
mysql的order by语句,如果在where条件中没有合适的索引选择时,将会选择order by col中的索引作为条件,但是如果是多个order by组合,将会导致放弃使用索引。和开发以及需求沟通,发现通过名字排序是可以不需要的。再次对比两次profiling(过程省略),发现第一次损坏大量io和cpu时间Sorting result上!因为该语句为前台语句,有大量查询,优化后,页面打开速度明显提升。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
精气神元
2015-02-15 · TA获得超过1万个赞
知道大有可为答主
回答量:4407
采纳率:0%
帮助的人:1848万
展开全部
确认下需求,如果只是为了应对这一个查询或类似于where channerId=x order by dtTime desc的查询,理论上 channelId+dtTime式的复合索引会更高效。 1 自动动手 explain 下这个查询,之前先建立 channelid 单索引、dtTime 单索引 和 channelId+..
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
就烦条0o
2018-07-27 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
select * from test order by id desc
这样应该是没用的,因为你的索引是单列索引,扫描了索引之后还要扫描表,性能明显不如全表扫描,如果可以,你可以试试select id from test order by id desc,这样就可以索引快速全扫描啦.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式