我在 MySQL 中有一个按时间戳排序的大型数据集,其中包含缺失的间隙,我试图用前一个时间戳的数据来填充分钟之间的间隙。我想要完成的一个例子是:
2013-10-04 13:51:00
2013-10-04 13:50:00
2013-10-04 13:48:00
2013-10-04 13:47:00
2013-10-04 13:46:00
如果时间间隔在 13:48:00 和 13:50:00 之间,我想插入一行 13:49:00 的数据,其中包含 13:48:00 的数据。仅使用 MySQL 查询可以实现这一点吗?如果是这样,查询会是什么样子?
最佳答案
与其重复数据,为什么不调整 SELECT 查询呢?像这样的事情会起作用:
SELECT * FROM `tableName` WHERE `timestampColumn` <= '2013-10-04 13:49:00'
ORDER BY `timestampColumn` DESC LIMIT 1
确保对 timestampColumn
建立索引以确保良好的性能。在此示例中,它将通过查找紧邻其前面的数据来找到“丢失”的数据。这也意味着您可以随时查询,而不仅仅是精确的分钟。
关于mysql - 两个时间戳之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19408746/