mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-07-10 15:17:41 +00:00
adjusted params
This commit is contained in:
@ -1,8 +1,7 @@
|
||||
WITH params AS (
|
||||
SELECT
|
||||
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 end_date, -- filter: end date (or NULL for open range)
|
||||
NULL::uuid AS device_id, -- filter: specific device (or NULL for all)
|
||||
NULL::date AS input_date, -- filter: start date (or NULL for open range) -- filter: end date (or NULL for open range)
|
||||
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)
|
||||
),
|
||||
@ -17,8 +16,8 @@ total_energy AS (
|
||||
FROM "device-status-log" log, params
|
||||
WHERE log.code = 'EnergyConsumed'
|
||||
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.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.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)
|
||||
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
|
||||
WHERE log.code = 'EnergyConsumedA'
|
||||
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.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.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)
|
||||
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
|
||||
WHERE log.code = 'EnergyConsumedB'
|
||||
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.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.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)
|
||||
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
|
||||
WHERE log.code = 'EnergyConsumedC'
|
||||
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.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.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)
|
||||
GROUP BY log.device_id, log.event_time::date, EXTRACT(HOUR FROM log.event_time)
|
||||
)
|
||||
|
Reference in New Issue
Block a user