@golemio/microclimate 1.2.8-dev.1384166512 → 1.2.8-dev.1561229684

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,164 +1,164 @@
1
- DROP VIEW analytic.v_microclimate_wind_dir_at_max_speed;
2
-
3
- DROP VIEW analytic.v_microclimate_measurements_daily_w_hights;
4
-
5
- DROP VIEW analytic.v_microclimate_measurement_hights;
6
-
7
- DROP VIEW analytic.v_microclimate_measurements_daily;
8
-
9
- DROP VIEW analytic.v_microclimate_raw_data;
10
-
11
- DROP VIEW analytic.v_microclimate_sensor_devices;
12
-
13
- DROP VIEW microclimate.v_sensor_points;
14
-
15
- DROP VIEW microclimate.v_sensor_measurements;
16
-
17
- DROP TABLE microclimate.sensor_devices_import;
18
-
19
- CREATE TABLE microclimate.sensor_devices_import (
20
- location_id int4 NULL,
21
- point_id int4 NULL,
22
- "location" varchar(50) NULL,
23
- loc_description varchar(50) NULL,
24
- loc_orientation varchar(50) NULL,
25
- loc_surface varchar(50) NULL,
26
- point_name varchar(50) NULL,
27
- point_whole_name varchar(50) NULL,
28
- address varchar(50) NULL,
29
- sensor_position varchar(50) NULL,
30
- sensor_position_detail varchar(50) NULL,
31
- sensor_id varchar(50) NOT NULL,
32
- data_relevance varchar(50) NULL,
33
- lat float4 NULL,
34
- lng float4 NULL,
35
- air_temp int4 NULL,
36
- air_hum int4 NULL,
37
- pressure int4 NULL,
38
- wind_dir int4 NULL,
39
- wind_impact int4 NULL,
40
- wind_speed int4 NULL,
41
- precip int4 NULL,
42
- sun_irr int4 NULL,
43
- soil_temp int4 NULL,
44
- water_pot int4 NULL,
45
- dendro_circ int4 NULL,
46
- dendro_gain int4 NULL,
47
- data_until varchar(50) NULL,
48
- CONSTRAINT sensor_devices_import_pkey PRIMARY KEY (sensor_id)
49
- );
50
-
51
- CREATE OR REPLACE VIEW microclimate.v_sensor_points
52
- AS SELECT DISTINCT s.point_id,
53
- s.point_name,
54
- s.location_id,
55
- s.location,
56
- s.loc_description,
57
- s.loc_orientation,
58
- s.loc_surface,
59
- s.lat,
60
- s.lng,
61
- NULL::text AS x_jtsk,
62
- NULL::text AS y_jtsk,
63
- NULL::text AS elevation_m,
64
- s.sensor_position,
65
- s.sensor_position_detail,
66
- concat(unpivot.measure, unpivot.height_cm) AS measure,
67
- CASE
68
- WHEN unpivot.measure = 'air_temp'::text THEN 'Teplota vzduchu'::text
69
- WHEN unpivot.measure = 'air_hum'::text THEN 'Vlhkost vzduchu'::text
70
- WHEN unpivot.measure = 'pressure'::text THEN 'Atmosférický tlak'::text
71
- WHEN unpivot.measure = 'wind_dir'::text THEN 'Směr větru'::text
72
- WHEN unpivot.measure = 'wind_impact'::text THEN 'Náraz větru'::text
73
- WHEN unpivot.measure = 'wind_speed'::text THEN 'Rychlost větru'::text
74
- WHEN unpivot.measure = 'precip'::text THEN 'Úhrn srážek'::text
75
- WHEN unpivot.measure = 'sun_irr'::text THEN 'Sluneční záření'::text
76
- WHEN unpivot.measure = 'soil_temp'::text THEN 'Teplota půdy'::text
77
- WHEN unpivot.measure = 'water_pot'::text THEN 'Vodní potenciál půdy'::text
78
- WHEN unpivot.measure = 'dendro_circ'::text THEN 'Obvod stromu'::text
79
- WHEN unpivot.measure = 'dendro_gain'::text THEN 'Přírůstek obvodu stromu'::text
80
- ELSE NULL::text
81
- END AS measure_cz,
82
- CASE
83
- WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
84
- WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
85
- WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
86
- WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
87
- WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
88
- WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
89
- WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
90
- WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
91
- WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
92
- WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
93
- WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
94
- WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
95
- ELSE NULL::text
96
- END AS unit
97
- FROM microclimate.sensor_devices_import s,
98
- LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
99
- WHERE unpivot.height_cm IS NOT NULL
100
- ORDER BY s.point_id;
101
-
102
- CREATE OR REPLACE VIEW microclimate.v_sensor_measurements
103
- AS WITH points_heights AS (
104
- SELECT s.sensor_id,
105
- s.point_id,
106
- s.location_id,
107
- unpivot.measure,
108
- unpivot.height_cm,
109
- CASE
110
- WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
111
- WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
112
- WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
113
- WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
114
- WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
115
- WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
116
- WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
117
- WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
118
- WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
119
- WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
120
- WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
121
- WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
122
- ELSE NULL::text
123
- END AS unit
124
- FROM microclimate.sensor_devices_import s,
125
- LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
126
- WHERE unpivot.height_cm IS NOT NULL
127
- ), measurements AS (
128
- SELECT m.sensor_id,
129
- m.measured_at,
130
- unpivot.measure,
131
- unpivot.value
132
- FROM microclimate.measurements m,
133
- LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
134
- CASE
135
- WHEN m.wind_dir::text = 'N'::text THEN 0
136
- WHEN m.wind_dir::text = 'NE'::text THEN 45
137
- WHEN m.wind_dir::text = 'E'::text THEN 90
138
- WHEN m.wind_dir::text = 'SE'::text THEN 135
139
- WHEN m.wind_dir::text = 'S'::text THEN 180
140
- WHEN m.wind_dir::text = 'SW'::text THEN 225
141
- WHEN m.wind_dir::text = 'W'::text THEN 270
142
- WHEN m.wind_dir::text = 'NW'::text THEN 315
143
- ELSE NULL::integer
144
- END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
145
- WHERE unpivot.value IS NOT NULL
146
- )
147
- SELECT q.sensor_id,
148
- q.measured_at,
149
- q.point_id,
150
- q.location_id,
151
- q.measure,
152
- q.value,
153
- q.unit,
154
- row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
155
- FROM ( SELECT measurements.sensor_id,
156
- measurements.measured_at,
157
- points_heights.point_id,
158
- points_heights.location_id,
159
- concat(measurements.measure, points_heights.height_cm) AS measure,
160
- measurements.value,
161
- points_heights.unit
162
- FROM measurements
163
- JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
164
- ORDER BY q.point_id, q.measure, q.measured_at DESC;
1
+ DROP VIEW analytic.v_microclimate_wind_dir_at_max_speed;
2
+
3
+ DROP VIEW analytic.v_microclimate_measurements_daily_w_hights;
4
+
5
+ DROP VIEW analytic.v_microclimate_measurement_hights;
6
+
7
+ DROP VIEW analytic.v_microclimate_measurements_daily;
8
+
9
+ DROP VIEW analytic.v_microclimate_raw_data;
10
+
11
+ DROP VIEW analytic.v_microclimate_sensor_devices;
12
+
13
+ DROP VIEW microclimate.v_sensor_points;
14
+
15
+ DROP VIEW microclimate.v_sensor_measurements;
16
+
17
+ DROP TABLE microclimate.sensor_devices_import;
18
+
19
+ CREATE TABLE microclimate.sensor_devices_import (
20
+ location_id int4 NULL,
21
+ point_id int4 NULL,
22
+ "location" varchar(50) NULL,
23
+ loc_description varchar(50) NULL,
24
+ loc_orientation varchar(50) NULL,
25
+ loc_surface varchar(50) NULL,
26
+ point_name varchar(50) NULL,
27
+ point_whole_name varchar(50) NULL,
28
+ address varchar(50) NULL,
29
+ sensor_position varchar(50) NULL,
30
+ sensor_position_detail varchar(50) NULL,
31
+ sensor_id varchar(50) NOT NULL,
32
+ data_relevance varchar(50) NULL,
33
+ lat float4 NULL,
34
+ lng float4 NULL,
35
+ air_temp int4 NULL,
36
+ air_hum int4 NULL,
37
+ pressure int4 NULL,
38
+ wind_dir int4 NULL,
39
+ wind_impact int4 NULL,
40
+ wind_speed int4 NULL,
41
+ precip int4 NULL,
42
+ sun_irr int4 NULL,
43
+ soil_temp int4 NULL,
44
+ water_pot int4 NULL,
45
+ dendro_circ int4 NULL,
46
+ dendro_gain int4 NULL,
47
+ data_until varchar(50) NULL,
48
+ CONSTRAINT sensor_devices_import_pkey PRIMARY KEY (sensor_id)
49
+ );
50
+
51
+ CREATE OR REPLACE VIEW microclimate.v_sensor_points
52
+ AS SELECT DISTINCT s.point_id,
53
+ s.point_name,
54
+ s.location_id,
55
+ s.location,
56
+ s.loc_description,
57
+ s.loc_orientation,
58
+ s.loc_surface,
59
+ s.lat,
60
+ s.lng,
61
+ NULL::text AS x_jtsk,
62
+ NULL::text AS y_jtsk,
63
+ NULL::text AS elevation_m,
64
+ s.sensor_position,
65
+ s.sensor_position_detail,
66
+ concat(unpivot.measure, unpivot.height_cm) AS measure,
67
+ CASE
68
+ WHEN unpivot.measure = 'air_temp'::text THEN 'Teplota vzduchu'::text
69
+ WHEN unpivot.measure = 'air_hum'::text THEN 'Vlhkost vzduchu'::text
70
+ WHEN unpivot.measure = 'pressure'::text THEN 'Atmosférický tlak'::text
71
+ WHEN unpivot.measure = 'wind_dir'::text THEN 'Směr větru'::text
72
+ WHEN unpivot.measure = 'wind_impact'::text THEN 'Náraz větru'::text
73
+ WHEN unpivot.measure = 'wind_speed'::text THEN 'Rychlost větru'::text
74
+ WHEN unpivot.measure = 'precip'::text THEN 'Úhrn srážek'::text
75
+ WHEN unpivot.measure = 'sun_irr'::text THEN 'Sluneční záření'::text
76
+ WHEN unpivot.measure = 'soil_temp'::text THEN 'Teplota půdy'::text
77
+ WHEN unpivot.measure = 'water_pot'::text THEN 'Vodní potenciál půdy'::text
78
+ WHEN unpivot.measure = 'dendro_circ'::text THEN 'Obvod stromu'::text
79
+ WHEN unpivot.measure = 'dendro_gain'::text THEN 'Přírůstek obvodu stromu'::text
80
+ ELSE NULL::text
81
+ END AS measure_cz,
82
+ CASE
83
+ WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
84
+ WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
85
+ WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
86
+ WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
87
+ WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
88
+ WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
89
+ WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
90
+ WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
91
+ WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
92
+ WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
93
+ WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
94
+ WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
95
+ ELSE NULL::text
96
+ END AS unit
97
+ FROM microclimate.sensor_devices_import s,
98
+ LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
99
+ WHERE unpivot.height_cm IS NOT NULL
100
+ ORDER BY s.point_id;
101
+
102
+ CREATE OR REPLACE VIEW microclimate.v_sensor_measurements
103
+ AS WITH points_heights AS (
104
+ SELECT s.sensor_id,
105
+ s.point_id,
106
+ s.location_id,
107
+ unpivot.measure,
108
+ unpivot.height_cm,
109
+ CASE
110
+ WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
111
+ WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
112
+ WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
113
+ WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
114
+ WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
115
+ WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
116
+ WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
117
+ WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
118
+ WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
119
+ WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
120
+ WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
121
+ WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
122
+ ELSE NULL::text
123
+ END AS unit
124
+ FROM microclimate.sensor_devices_import s,
125
+ LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
126
+ WHERE unpivot.height_cm IS NOT NULL
127
+ ), measurements AS (
128
+ SELECT m.sensor_id,
129
+ m.measured_at,
130
+ unpivot.measure,
131
+ unpivot.value
132
+ FROM microclimate.measurements m,
133
+ LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
134
+ CASE
135
+ WHEN m.wind_dir::text = 'N'::text THEN 0
136
+ WHEN m.wind_dir::text = 'NE'::text THEN 45
137
+ WHEN m.wind_dir::text = 'E'::text THEN 90
138
+ WHEN m.wind_dir::text = 'SE'::text THEN 135
139
+ WHEN m.wind_dir::text = 'S'::text THEN 180
140
+ WHEN m.wind_dir::text = 'SW'::text THEN 225
141
+ WHEN m.wind_dir::text = 'W'::text THEN 270
142
+ WHEN m.wind_dir::text = 'NW'::text THEN 315
143
+ ELSE NULL::integer
144
+ END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
145
+ WHERE unpivot.value IS NOT NULL
146
+ )
147
+ SELECT q.sensor_id,
148
+ q.measured_at,
149
+ q.point_id,
150
+ q.location_id,
151
+ q.measure,
152
+ q.value,
153
+ q.unit,
154
+ row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
155
+ FROM ( SELECT measurements.sensor_id,
156
+ measurements.measured_at,
157
+ points_heights.point_id,
158
+ points_heights.location_id,
159
+ concat(measurements.measure, points_heights.height_cm) AS measure,
160
+ measurements.value,
161
+ points_heights.unit
162
+ FROM measurements
163
+ JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
164
+ ORDER BY q.point_id, q.measure, q.measured_at DESC;
@@ -1,2 +1,2 @@
1
- ALTER TABLE sensor_devices_import ALTER COLUMN data_relevance TYPE varchar(50);
1
+ ALTER TABLE sensor_devices_import ALTER COLUMN data_relevance TYPE varchar(50);
2
2
  ALTER TABLE sensor_devices_import ALTER COLUMN data_until TYPE varchar(50);
@@ -1,2 +1,2 @@
1
- ALTER TABLE sensor_devices_import ALTER COLUMN data_relevance TYPE date USING data_relevance::date;
2
- ALTER TABLE sensor_devices_import ALTER COLUMN data_until TYPE date USING data_until::date;
1
+ ALTER TABLE sensor_devices_import ALTER COLUMN data_relevance TYPE date USING data_relevance::date;
2
+ ALTER TABLE sensor_devices_import ALTER COLUMN data_until TYPE date USING data_until::date;
@@ -1,66 +1,66 @@
1
- -- microclimate.v_sensor_measurements source
2
-
3
- CREATE OR REPLACE VIEW v_sensor_measurements
4
- AS WITH points_heights AS (
5
- SELECT s.sensor_id,
6
- s.point_id,
7
- s.location_id,
8
- unpivot.measure,
9
- unpivot.height_cm,
10
- CASE
11
- WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
12
- WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
13
- WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
14
- WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
15
- WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
16
- WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
17
- WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
18
- WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
19
- WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
20
- WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
21
- WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
22
- WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
23
- ELSE NULL::text
24
- END AS unit
25
- FROM sensor_devices_import s,
26
- LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
27
- WHERE unpivot.height_cm IS NOT NULL
28
- ), measurements AS (
29
- SELECT m.sensor_id,
30
- m.measured_at,
31
- unpivot.measure,
32
- unpivot.value
33
- FROM measurements m,
34
- LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
35
- CASE
36
- WHEN m.wind_dir::text = 'N'::text THEN 0
37
- WHEN m.wind_dir::text = 'NE'::text THEN 45
38
- WHEN m.wind_dir::text = 'E'::text THEN 90
39
- WHEN m.wind_dir::text = 'SE'::text THEN 135
40
- WHEN m.wind_dir::text = 'S'::text THEN 180
41
- WHEN m.wind_dir::text = 'SW'::text THEN 225
42
- WHEN m.wind_dir::text = 'W'::text THEN 270
43
- WHEN m.wind_dir::text = 'NW'::text THEN 315
44
- ELSE NULL::integer
45
- END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
46
- WHERE unpivot.value IS NOT NULL
47
- )
48
- SELECT q.sensor_id,
49
- q.measured_at,
50
- q.point_id,
51
- q.location_id,
52
- q.measure,
53
- q.value,
54
- q.unit,
55
- row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
56
- FROM ( SELECT measurements.sensor_id,
57
- measurements.measured_at,
58
- points_heights.point_id,
59
- points_heights.location_id,
60
- concat(measurements.measure, points_heights.height_cm) AS measure,
61
- measurements.value,
62
- points_heights.unit
63
- FROM measurements
64
- JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
65
- ORDER BY q.point_id, q.measure, q.measured_at DESC;
66
-
1
+ -- microclimate.v_sensor_measurements source
2
+
3
+ CREATE OR REPLACE VIEW v_sensor_measurements
4
+ AS WITH points_heights AS (
5
+ SELECT s.sensor_id,
6
+ s.point_id,
7
+ s.location_id,
8
+ unpivot.measure,
9
+ unpivot.height_cm,
10
+ CASE
11
+ WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
12
+ WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
13
+ WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
14
+ WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
15
+ WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
16
+ WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
17
+ WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
18
+ WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
19
+ WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
20
+ WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
21
+ WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
22
+ WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
23
+ ELSE NULL::text
24
+ END AS unit
25
+ FROM sensor_devices_import s,
26
+ LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
27
+ WHERE unpivot.height_cm IS NOT NULL
28
+ ), measurements AS (
29
+ SELECT m.sensor_id,
30
+ m.measured_at,
31
+ unpivot.measure,
32
+ unpivot.value
33
+ FROM measurements m,
34
+ LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
35
+ CASE
36
+ WHEN m.wind_dir::text = 'N'::text THEN 0
37
+ WHEN m.wind_dir::text = 'NE'::text THEN 45
38
+ WHEN m.wind_dir::text = 'E'::text THEN 90
39
+ WHEN m.wind_dir::text = 'SE'::text THEN 135
40
+ WHEN m.wind_dir::text = 'S'::text THEN 180
41
+ WHEN m.wind_dir::text = 'SW'::text THEN 225
42
+ WHEN m.wind_dir::text = 'W'::text THEN 270
43
+ WHEN m.wind_dir::text = 'NW'::text THEN 315
44
+ ELSE NULL::integer
45
+ END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
46
+ WHERE unpivot.value IS NOT NULL
47
+ )
48
+ SELECT q.sensor_id,
49
+ q.measured_at,
50
+ q.point_id,
51
+ q.location_id,
52
+ q.measure,
53
+ q.value,
54
+ q.unit,
55
+ row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
56
+ FROM ( SELECT measurements.sensor_id,
57
+ measurements.measured_at,
58
+ points_heights.point_id,
59
+ points_heights.location_id,
60
+ concat(measurements.measure, points_heights.height_cm) AS measure,
61
+ measurements.value,
62
+ points_heights.unit
63
+ FROM measurements
64
+ JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
65
+ ORDER BY q.point_id, q.measure, q.measured_at DESC;
66
+
@@ -1,69 +1,69 @@
1
- CREATE OR REPLACE VIEW v_sensor_measurements
2
- AS
3
- WITH points_heights AS (
4
- SELECT s.sensor_id,
5
- s.point_id,
6
- s.location_id,
7
- unpivot.measure,
8
- unpivot.height_cm,
9
- CASE
10
- WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
11
- WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
12
- WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
13
- WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
14
- WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
15
- WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
16
- WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
17
- WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
18
- WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
19
- WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
20
- WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
21
- WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
22
- ELSE NULL::text
23
- END AS unit
24
- FROM sensor_devices_import s,
25
- LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
26
- WHERE unpivot.height_cm IS NOT NULL
27
- ), measurements AS (
28
- SELECT m.sensor_id,
29
- m.measured_at,
30
- unpivot.measure,
31
- unpivot.value
32
- FROM measurements m
33
- join sensor_devices_import sdi
34
- on sdi.sensor_id = m.sensor_id
35
- and m.measured_at::date >= sdi.data_relevance::date
36
- and m.measured_at::date <= coalesce(sdi.data_until::date,current_date)
37
- ,
38
- LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
39
- CASE
40
- WHEN m.wind_dir::text = 'N'::text THEN 0
41
- WHEN m.wind_dir::text = 'NE'::text THEN 45
42
- WHEN m.wind_dir::text = 'E'::text THEN 90
43
- WHEN m.wind_dir::text = 'SE'::text THEN 135
44
- WHEN m.wind_dir::text = 'S'::text THEN 180
45
- WHEN m.wind_dir::text = 'SW'::text THEN 225
46
- WHEN m.wind_dir::text = 'W'::text THEN 270
47
- WHEN m.wind_dir::text = 'NW'::text THEN 315
48
- ELSE NULL::integer
49
- END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
50
- WHERE unpivot.value IS NOT NULL
51
- )
52
- SELECT q.sensor_id,
53
- q.measured_at,
54
- q.point_id,
55
- q.location_id,
56
- q.measure,
57
- q.value,
58
- q.unit,
59
- row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
60
- FROM ( SELECT measurements.sensor_id,
61
- measurements.measured_at,
62
- points_heights.point_id,
63
- points_heights.location_id,
64
- concat(measurements.measure, points_heights.height_cm) AS measure,
65
- measurements.value,
66
- points_heights.unit
67
- FROM measurements
68
- JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
69
- ORDER BY q.point_id, q.measure, q.measured_at DESC;
1
+ CREATE OR REPLACE VIEW v_sensor_measurements
2
+ AS
3
+ WITH points_heights AS (
4
+ SELECT s.sensor_id,
5
+ s.point_id,
6
+ s.location_id,
7
+ unpivot.measure,
8
+ unpivot.height_cm,
9
+ CASE
10
+ WHEN unpivot.measure = 'air_temp'::text THEN '°C'::text
11
+ WHEN unpivot.measure = 'air_hum'::text THEN '%'::text
12
+ WHEN unpivot.measure = 'pressure'::text THEN 'Pa'::text
13
+ WHEN unpivot.measure = 'wind_dir'::text THEN '°'::text
14
+ WHEN unpivot.measure = 'wind_impact'::text THEN 'km/h'::text
15
+ WHEN unpivot.measure = 'wind_speed'::text THEN 'km/h'::text
16
+ WHEN unpivot.measure = 'precip'::text THEN 'mm'::text
17
+ WHEN unpivot.measure = 'sun_irr'::text THEN 'lux'::text
18
+ WHEN unpivot.measure = 'soil_temp'::text THEN '°C'::text
19
+ WHEN unpivot.measure = 'water_pot'::text THEN 'kPa'::text
20
+ WHEN unpivot.measure = 'dendro_circ'::text THEN 'mm'::text
21
+ WHEN unpivot.measure = 'dendro_gain'::text THEN 'µm'::text
22
+ ELSE NULL::text
23
+ END AS unit
24
+ FROM sensor_devices_import s,
25
+ LATERAL ( VALUES ('air_temp'::text,s.air_temp), ('air_hum'::text,s.air_hum), ('pressure'::text,s.pressure), ('wind_dir'::text,s.wind_dir), ('wind_impact'::text,s.wind_impact), ('wind_speed'::text,s.wind_speed), ('precip'::text,s.precip), ('sun_irr'::text,s.sun_irr), ('soil_temp'::text,s.soil_temp), ('water_pot'::text,s.water_pot), ('dendro_circ'::text,s.dendro_circ), ('dendro_gain'::text,s.dendro_gain)) unpivot(measure, height_cm)
26
+ WHERE unpivot.height_cm IS NOT NULL
27
+ ), measurements AS (
28
+ SELECT m.sensor_id,
29
+ m.measured_at,
30
+ unpivot.measure,
31
+ unpivot.value
32
+ FROM measurements m
33
+ join sensor_devices_import sdi
34
+ on sdi.sensor_id = m.sensor_id
35
+ and m.measured_at::date >= sdi.data_relevance::date
36
+ and m.measured_at::date <= coalesce(sdi.data_until::date,current_date)
37
+ ,
38
+ LATERAL ( VALUES ('air_temp'::text,m.air_temp), ('air_hum'::text,m.air_hum), ('pressure'::text,m.pressure), ('wind_dir'::text,
39
+ CASE
40
+ WHEN m.wind_dir::text = 'N'::text THEN 0
41
+ WHEN m.wind_dir::text = 'NE'::text THEN 45
42
+ WHEN m.wind_dir::text = 'E'::text THEN 90
43
+ WHEN m.wind_dir::text = 'SE'::text THEN 135
44
+ WHEN m.wind_dir::text = 'S'::text THEN 180
45
+ WHEN m.wind_dir::text = 'SW'::text THEN 225
46
+ WHEN m.wind_dir::text = 'W'::text THEN 270
47
+ WHEN m.wind_dir::text = 'NW'::text THEN 315
48
+ ELSE NULL::integer
49
+ END), ('wind_impact'::text,m.wind_impact), ('wind_speed'::text,m.wind_speed), ('precip'::text,m.precip), ('sun_irr'::text,m.sun_irr), ('soil_temp'::text,m.soil_temp), ('water_pot'::text,m.water_pot), ('dendro_circ'::text,m.dendro_circ), ('dendro_gain'::text,m.dendro_gain)) unpivot(measure, value)
50
+ WHERE unpivot.value IS NOT NULL
51
+ )
52
+ SELECT q.sensor_id,
53
+ q.measured_at,
54
+ q.point_id,
55
+ q.location_id,
56
+ q.measure,
57
+ q.value,
58
+ q.unit,
59
+ row_number() OVER (PARTITION BY q.point_id, q.measure ORDER BY q.point_id, q.measure, q.measured_at DESC) AS rn
60
+ FROM ( SELECT measurements.sensor_id,
61
+ measurements.measured_at,
62
+ points_heights.point_id,
63
+ points_heights.location_id,
64
+ concat(measurements.measure, points_heights.height_cm) AS measure,
65
+ measurements.value,
66
+ points_heights.unit
67
+ FROM measurements
68
+ JOIN points_heights ON points_heights.sensor_id::text = measurements.sensor_id::text AND points_heights.measure = measurements.measure) q
69
+ ORDER BY q.point_id, q.measure, q.measured_at DESC;