MySQL 执行时间过长

标签 mysql optimization where-clause between

我的查询很简单,但包含大量数据:

SELECT * 
FROM trackhistory 
WHERE key=14846 and 
    date between "2016-11-15 00:00:00" and "2016-12-16 13:47:02"

此表中有超过 1000 万行。

我的表结构是:

enter image description here

请帮我优化一下。执行时间超过两分钟。

我已经使用解释来查询,但没有得到任何线索。 enter image description here

最佳答案

复合INDEX(key, date)会比单独的索引更好。

参见my index cookbook

关于MySQL 执行时间过长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42086759/

相关文章:

MySQL 查询多个表并在找不到 id 时将字段返回为 null

php - 在按钮徽章上显示 MySQL 查询的输出

mysql - 创建表的 SQL 错误

PHP:如何在 MySQL 中显示与其他行不同的特定行?

JavaScript 优化

angular - 如何在 Strapi、GraphQL 的 where 子句中使用多个 'and' 条件进行查询?

php - MYSQL+PHP : Array Processing?

mysql - 将对同一张表的查询合并为一个查询

java - 将线程用于 100 个独立的小型本地搜索作业是否是一种干净的方法?

powershell - 在高级函数中接受 where 子句