php - 通过索引提高查询性能

标签 php mysql

我有一个超过 10k 行的 MySQL 数据库。当我执行查询以获取 24 小时内的所有行时,需要很长时间才能得到结果:

$sql = 'SELECT *, DATE_FORMAT(m.time, "%d.%m.%Y %H:%i:%s") AS date 
  FROM markers m,pid p 
  WHERE m.time >=DATE_SUB(NOW(), INTERVAL 24 HOUR) 
  AND m.pidID=p.id';

我已阅读有关表索引的内容,但无法使其适应我的查询。任何人都可以解释如何使用索引更改上述查询,以便查询不会进行全表扫描吗?

最佳答案

查询通常受益于在它们的 WHEREJOIN...ON 条件(和 ORDER|GROUP BY 列表中使用的字段上的索引).

关于php - 通过索引提高查询性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38752446/

相关文章:

php - $_POST 函数不起作用?

php - curl 多次和返回转移

mysql - Django Mysql 二进制日志错误

MySQL 以句子结尾 SUBSTRING

用于将内容复制到同一行的另一个字段的 MySQL 查询

php - wp_remote_get 和 url 参数

javascript - 我应该使用哪种方法来禁用按钮

php - SQL 条件运算符的限制?

python - 从 MySQL 将数字数据加载到 python/pandas/numpy 数组的最快方法

php - 支持节假日的日历库