【发布时间】:2016-01-27 12:12:50
【问题描述】:
我在数据库中每 6 小时收集一次统计数据,每个数据都带有时间戳。然后我的代码中有时间戳数组。我需要从数据库中为我的时间戳数组中的每个值选择一个值,并且该行将具有比数组中最接近的时间戳。
为了说明: 数据表
Id Timestamp Value
1 1400000027 10
2 1400000035 15
3 1400000043 20
4 1400000044 21
5 1400000048 30
6 1400000060 35
该数组包含以下时间戳:
[1400000020, 1400000024, 1400000035, 1400000050]
我需要根据输入数组从数据库中获取的行是:
Id Timestamp Value
1 1400000027 10
1 1400000027 10
2 1400000035 15
6 1400000060 35
有没有一种简单的方法可以在一个查询中执行此操作?最好的解决方案是教义,因为我使用的是 Symfony 2 和 Doctrine。
【问题讨论】:
标签: php sql postgresql symfony doctrine-orm