每天增加的独特记录

时间:2017-12-12 18:48:58

标签: sql postgresql timestamp postgis

我是psql的新手。我有一张汽车ID表 - id和他们的电池电量 - battery,每隔10分钟,持续2周。

我的目标是创建一个独特车载总数的输出,其电池每天都有任何增益。这可能意味着在汽车电池电量高于之前时间戳的那一天中的任何时间。换句话说,battery的值 - battery的先前值为正值。应跳过battery下NA值的记录。

我已经开始查询但我不确定如何只选择电池电量上升的唯一ID。任何建议将不胜感激!

SELECT count(distinct id), TO_CHAR(date_trunc('day', (time::timestamp) AT TIME ZONE 'EST'), 'YYYY-MM-DD') AS day FROM test_db .... 
GROUP by day 
ORDER by day

以下是数据样本:

  id|                           time| battery
 54 | 2017-12-12 09:50:04.402775+00 |     100
 54 | 2017-12-12 09:40:04.618926+00 |     100
 54 | 2017-12-12 09:30:04.11399+00  |     100
 54 | 2017-12-12 09:20:03.906716+00 |     100
 54 | 2017-12-12 09:10:03.955133+00 |     100
 54 | 2017-12-12 09:00:04.678508+00 |     100
 54 | 2017-12-12 08:50:03.733471+00 |     100
 54 | 2017-12-12 08:40:03.65688+00  |     100
 54 | 2017-12-12 08:30:04.260608+00 |     100
 54 | 2017-12-12 08:20:03.98387+00  |     100
 54 | 2017-12-12 08:10:04.164129+00 |      98
 54 | 2017-12-12 08:00:04.597976+00 |      98
 54 | 2017-12-12 07:50:04.501231+00 |      98
 54 | 2017-12-12 07:40:04.441531+00 |      98
 54 | 2017-12-12 07:30:04.310876+00 |      98
 54 | 2017-12-12 07:20:04.317241+00 |      98
 54 | 2017-12-12 07:10:03.856432+00 |      67
 54 | 2017-12-12 07:00:03.628862+00 |      67
 54 | 2017-12-12 06:50:03.868495+00 |      67
 54 | 2017-12-12 06:40:04.490324+00 |      67
 54 | 2017-12-12 06:30:03.83739+00  |      67
 54 | 2017-12-12 06:20:03.817014+00 |      67
 54 | 2017-12-12 06:10:04.081174+00 |      29
 54 | 2017-12-12 06:00:04.178765+00 |      29





    data_type         
--------------------------
 integer
 timestamp with time zone
 integer

0 个答案:

没有答案