我为“播放”表获得了以下表结构:
此表中存储了约4百万条记录,现在与此查询类似的查询需要花费6秒钟以上的时间来检索数据:
select * from plays where id_machine = 52 and cicle = 2 and play = 2450
每个戏剧片段由7000个戏剧组成。因此,foo示例cicle 3将具有7000个播放记录,其中“播放”列将从1变为7000。
我需要大大减少这段时间。
我的一个朋友建议我将播放和cicle转换为索引,但是我不确定。
答案 0 :(得分:1)
尝试使用复合索引也被称为多列索引,例如您的情况(循环播放)。它将提供更好的性能。
查询优化器将组合索引用于测试索引中所有列的查询,或者用于测试前几列,前两列等的查询。
http://www.mysqltutorial.org/mysql-index/mysql-composite-index/