在mysql中建立索引的最佳方法是什么

c9qzyr3d  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(231)

似乎是个小问题,但我很困惑。
我有一张大约有25列的table。该表在任何时间点都将包含>10万行。我想在循环中连续运行下面的查询。

SELECT recordfile
FROM MYTABLE 
WHERE duration = '0'
AND attempt < max_attempt
AND thread =1
ORDER BY id ASC

查询似乎花费了太多时间(平均0.0150秒)。如何放置适当的索引或任何其他方法,使查询最快?

rhfm7lfc

rhfm7lfc1#

attempt 以及 max_attempt 表中的两列?我想是的。
处理是否会更改其中的某些列?
添加以下内容:

INDEX(thread, duration,  -- in either order
      id)

一次抓取100行,而不是一行。然后,在处理它们时,仔细检查可能已更改的列。“抓取”会慢一点(但不是100倍);测试可能要快得多。一定要为那个测试设计一个最佳的指标。

相关问题