算到一个特定值?

时间:2018-08-28 15:02:52

标签: postgresql

说您有一个按日期排序的表格,该表格可以捕获其中装有设备的车辆的速度。想象一下,您每天可以获得30次更新。每辆车并不总是30辆。数据将包含车辆,时间戳和速度。

我想要做的是能够计算自车辆上次超过10 mph以来经过了多少天才能找到不活动的车辆。在postgresql中有可能发生这种情况吗?

*或者是否有一种方法可以获取表中的行号(如果将表的行速度超过10进行排序),然后选择该行号中的日期以从列出的日期中减去当前日期?

2 个答案:

答案 0 :(得分:1)

SELECT DISTINCT ON (vessel) vessel, now() - date
FROM your_table
WHERE speed > 10
ORDER BY vessel, date DESC

这将告诉您每辆车的速度场持续多长时间才超过10。

答案 1 :(得分:0)

SELECT vessel, now() - max(date) 
WHERE speed > 10
FROM your_table
GROUP BY vessel;