mysql order by字段是否应该创建索引
语句是这样:select*from表wherechannerId=1orderbydtTimedesc;向程序中只使用这样的语句创建索引的话是只给channelId创建好...
语句是这样:select * from 表 where channerId=1 order by dtTime desc;
向程序中只使用这样的语句创建索引的话是只给channelId创建好 还是channelId+dtTime式的复合索引比较好 展开
向程序中只使用这样的语句创建索引的话是只给channelId创建好 还是channelId+dtTime式的复合索引比较好 展开
2个回答
展开全部
0 确认下需求,如果只是为了应对这一个查询或类似于where channerId=x order by dtTime desc的查询,理论上 channelId+dtTime式的复合索引会更高效。
1 自动动手 explain 下这个查询,之前先建立 channelid 单索引、dtTime 单索引 和 channelId+dtTime 复合索引。
分别对 自动使用索引、强制使用 dtTime 索引、强制使用 channelId+dtTime 复合索引的情况都 explain下;
掌握下explain吧,你会提高一个认识水平的。
1 自动动手 explain 下这个查询,之前先建立 channelid 单索引、dtTime 单索引 和 channelId+dtTime 复合索引。
分别对 自动使用索引、强制使用 dtTime 索引、强制使用 channelId+dtTime 复合索引的情况都 explain下;
掌握下explain吧,你会提高一个认识水平的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询