【发布时间】:2017-07-28 17:35:59
【问题描述】:
我正在寻找一种快速查询 2.704 MySQL 选择的方法。 目前这个查询需要202.91903秒,太慢了。
进行这么多查询的最佳方法是什么?
我为什么需要这个?
我有 26 个表格,其中包含从 24.11.2016 到今天的条目。每分钟都有一个新条目。 (时间上午 10:00 至次日凌晨 04:00)。 现在我需要选择每天最新的条目,但最新的条目可能在 04:00:00,但也可以更早(例如下午 03:00) 我永远不知道最后一个条目是什么时候。 所以我有以下选择:
SELECT `column1`, `column2`, `column3`
FROM `table`
WHERE `timestamp`>='2016-11-24 10:00:00' AND `timestamp`< '2016-11-25 04:01:00'
ORDER BY `id` DESC LIMIT 1
我为每一天和每张桌子做的这个选择。
有没有人有办法加快这个速度?
【问题讨论】:
-
在查询中使用解释
-
2.704这个数字从何而来?
-
尽量理解问题,不要给出这么生硬的回答。为什么要使用 PHP 动态生成 2.704 查询?
-
我不太明白您要做什么,但是如果您需要从不同表中选择少量静态记录,您可能应该每天将新记录复制到一个新表中以用于你的分析。
-
所以你必须在这里询问才能得到一个想法。显然,查询的数量是这里的关键问题。