60 lines
1.7 KiB
MySQL
60 lines
1.7 KiB
MySQL
|
with
|
||
|
twelve_avg as (
|
||
|
select
|
||
|
date_trunc('day', time)::date as day,
|
||
|
avg(temperature)::numeric(10,0) as temperature
|
||
|
from room_climate_measurement_t
|
||
|
where
|
||
|
category = 'Outdoor' and
|
||
|
location = 'Outdoor' and
|
||
|
extract('hour' from time) = 12 and
|
||
|
extract('year' from time) = 2023
|
||
|
group by day
|
||
|
order by day
|
||
|
),
|
||
|
day_avg as (
|
||
|
select
|
||
|
date_trunc('day', time)::date as day,
|
||
|
avg(temperature)::numeric(10,0) as temperature
|
||
|
from room_climate_measurement_t
|
||
|
where
|
||
|
category = 'Outdoor' and
|
||
|
location = 'Outdoor' and
|
||
|
extract('year' from time) = 2023
|
||
|
group by day
|
||
|
order by day
|
||
|
)
|
||
|
select
|
||
|
d.day as day,
|
||
|
d.temperature as day_avg_temperature,
|
||
|
t.temperature as twelve_avg_temperature,
|
||
|
(d.temperature - t.temperature) as swing
|
||
|
from day_avg d,
|
||
|
twelve_avg t
|
||
|
where d.day = t.day;
|
||
|
|
||
|
|
||
|
|
||
|
with
|
||
|
day_avg as (
|
||
|
select
|
||
|
date_trunc('day', time)::date as day,
|
||
|
avg(temperature) as temperature
|
||
|
from room_climate_measurement_t
|
||
|
where
|
||
|
category = 'Outdoor' and
|
||
|
location = 'Outdoor' and
|
||
|
extract('hour' from time) = 12 and
|
||
|
extract('year' from time) = 2023
|
||
|
group by day
|
||
|
order by day
|
||
|
)
|
||
|
select
|
||
|
temperature::numeric(10,0) as t,
|
||
|
count(*)
|
||
|
from
|
||
|
day_avg
|
||
|
group by t;
|
||
|
|
||
|
|