From 5fd721de5ff5ddf78b8d165cd24c132b62edcc4a Mon Sep 17 00:00:00 2001 From: Julien Maupetit Date: Tue, 7 Jan 2025 21:55:51 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7(opendata)=20update=20latest=20stat?= =?UTF-8?q?uses=20query?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that we have real world statuses, we can provide a relevant timescaleDB based database query. --- src/opendata/data7.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/opendata/data7.yaml b/src/opendata/data7.yaml index 6284cfab..570554e7 100644 --- a/src/opendata/data7.yaml +++ b/src/opendata/data7.yaml @@ -7,6 +7,16 @@ default: datasets: - basename: statuses query: >- + WITH + pdc_status AS ( + SELECT + LAST (Status.id, Status.horodatage) AS latest_id + FROM + PointDeCharge + INNER JOIN Status ON Status.point_de_charge_id = PointDeCharge.id + GROUP BY + PointDeCharge.id_pdc_itinerance + ) SELECT PointDeCharge.id_pdc_itinerance, Status.etat_pdc, @@ -19,6 +29,14 @@ default: FROM Status INNER JOIN PointDeCharge ON Status.point_de_charge_id = PointDeCharge.id + WHERE + Status.id IN ( + SELECT + latest_id + FROM + pdc_status + ) + ORDER BY Status.horodatage DESC - basename: statiques query: >- WITH