adjusted params

This commit is contained in:
Dona Maria Absi
2025-04-16 12:14:38 +03:00
parent eba3513e14
commit 25650ca91b

View File

@ -1,8 +1,7 @@
WITH params AS ( WITH params AS (
SELECT SELECT
NULL::uuid AS device_id, -- filter: specific device (or NULL for all) NULL::uuid AS device_id, -- filter: specific device (or NULL for all)
NULL::date AS start_date, -- filter: start date (or NULL for open range) NULL::date AS input_date, -- filter: start date (or NULL for open range) -- filter: end date (or NULL for open range)
NULL::date AS end_date, -- filter: end date (or NULL for open range)
NULL::int AS hour, -- filter: hour of day (or NULL for all hours) NULL::int AS hour, -- filter: hour of day (or NULL for all hours)
NULL::int AS min_kw -- filter: min kW consumed (or NULL for no filter) NULL::int AS min_kw -- filter: min kW consumed (or NULL for no filter)
), ),
@ -17,8 +16,8 @@ total_energy AS (
FROM "device-status-log" log, params FROM "device-status-log" log, params
WHERE log.code = 'EnergyConsumed' WHERE log.code = 'EnergyConsumed'
AND (params.device_id IS NULL OR log.device_id = params.device_id) AND (params.device_id IS NULL OR log.device_id = params.device_id)
AND (params.start_date IS NULL OR log.event_time::date >= params.start_date) AND (params.input_date IS NULL OR log.event_time::date >= params.input_date)
AND (params.end_date IS NULL OR log.event_time::date <= params.end_date) AND (params.input_date IS NULL OR log.event_time::date <= params.input_date)
AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour) AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour)
GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time) GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time)
), ),
@ -33,8 +32,8 @@ energy_phase_A AS (
FROM "device-status-log" log, params FROM "device-status-log" log, params
WHERE log.code = 'EnergyConsumedA' WHERE log.code = 'EnergyConsumedA'
AND (params.device_id IS NULL OR log.device_id = params.device_id) AND (params.device_id IS NULL OR log.device_id = params.device_id)
AND (params.start_date IS NULL OR log.event_time::date >= params.start_date) AND (params.input_date IS NULL OR log.event_time::date >= params.input_date)
AND (params.end_date IS NULL OR log.event_time::date <= params.end_date) AND (params.input_date IS NULL OR log.event_time::date <= params.input_date)
AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour) AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour)
GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time) GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time)
), ),
@ -49,8 +48,8 @@ energy_phase_B AS (
FROM "device-status-log" log, params FROM "device-status-log" log, params
WHERE log.code = 'EnergyConsumedB' WHERE log.code = 'EnergyConsumedB'
AND (params.device_id IS NULL OR log.device_id = params.device_id) AND (params.device_id IS NULL OR log.device_id = params.device_id)
AND (params.start_date IS NULL OR log.event_time::date >= params.start_date) AND (params.input_date IS NULL OR log.event_time::date >= params.input_date)
AND (params.end_date IS NULL OR log.event_time::date <= params.end_date) AND (params.input_date IS NULL OR log.event_time::date <= params.input_date)
AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour) AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour)
GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time) GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time)
), ),
@ -65,8 +64,8 @@ energy_phase_C AS (
FROM "device-status-log" log, params FROM "device-status-log" log, params
WHERE log.code = 'EnergyConsumedC' WHERE log.code = 'EnergyConsumedC'
AND (params.device_id IS NULL OR log.device_id = params.device_id) AND (params.device_id IS NULL OR log.device_id = params.device_id)
AND (params.start_date IS NULL OR log.event_time::date >= params.start_date) AND (params.input_date IS NULL OR log.event_time::date >= params.input_date)
AND (params.end_date IS NULL OR log.event_time::date <= params.end_date) AND (params.input_date IS NULL OR log.event_time::date <= params.input_date)
AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour) AND (params.hour IS NULL OR EXTRACT(HOUR FROM log.event_time) = params.hour)
GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time) GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time)
) )