У меня есть таблица с записями автомобилей:
table: cars
columns:
car_id | timestamp | km_driven
Я бегу PostgreSQL 9.6
.
Как мне сделать:
SELECT timestamp, car_id, km_driven_within_the_hour FROM cars
Я хочу GROUP BY
мой timestamp
, поэтому все записи, записанные с каждым часом, группируются по каждой машине, а затем в течение этого часа km_driven_within_the_hour
SUM
'ed объединяются.
Я пробовал:
SELECT timestamp, car_id, SUM(km_driven) AS km_driven_within_the_hour
FROM cars
GROUP BY trunc(EXTRACT(hour from timestamp)), car_id
выдает ошибку:
ERROR: function pg_catalog.date_part(unknown, text) does not exist
и отметка времени литья:
SELECT timestamp, car_id, SUM(km_driven) AS km_driven_within_the_hour
FROM cars
GROUP BY trunc(EXTRACT(hour from timestamp::timestamp)), car_id
Дает мне:
ERROR: column "cars.timestamp" must appear in the GROUP BY clause or be used in an aggregate function