为了账号安全,请及时绑定邮箱和手机立即绑定

mysql 如何建索引索引 (面试题)

mysql 如何建索引索引 (面试题)

慕标5832272 2019-04-07 09:37:45
wherea=1andb=1whereb=1whereb=1orderbytimedesc请问这三条sql如何建索引只建一条怎么建还有一个问题就是mysql优化器会自动调整where条件的前后顺序吗
查看完整描述

2 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

具体问题具体分析吧,mysql版本之间的差别比较大,需要针对不同的版本要看对索引的支持如何,
这三条查询中,b字段的查询频率最高,所以b字段要加入到索引中,多列索引中,索引的列顺序很重要。
只想建立单个索引,index(b,time)最合适。
“wherea=1andb=1”应该改为“whereb=1anda=1”
                            
查看完整回答
反对 回复 2019-04-07
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

一条的话...Index(b,time,a)联合索引...MySQL优化器不会自动调整WHERE的先后顺序...所以需要你自己写的时候注意...
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 372 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信