Skip to content

Commit 3008ce5

Browse files
author
wolfbunke
committed
fix version select
1 parent 49d1f53 commit 3008ce5

1 file changed

Lines changed: 68 additions & 69 deletions

File tree

dataprocessing/sql_snippets/ego_dp_versioning_mviews.sql

Lines changed: 68 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*
1+
/*
22
eGo Data Processing result data versioning
33
Copy a version of mvies from model_draft to OEP schema
44
@@ -13,13 +13,13 @@ __author__ = "wolfbunke"
1313
-- MView for Status Quo
1414
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_conv_powerplant_sq_mview CASCADE;
1515
CREATE MATERIALIZED VIEW supply.ego_dp_conv_powerplant_sq_mview AS
16-
SELECT *
16+
SELECT DISTINCT *
1717
FROM supply.ego_dp_conv_powerplant
1818
WHERE scenario = 'Status Quo'
1919
AND (shutdown IS NULL or shutdown >= 2015)
20-
AND capacity > 0;
21-
-- AND preversion = 'v0.3.0'
22-
--AND version = 'v0.4.4';
20+
AND capacity > 0
21+
AND preversion = 'v0.3.0'
22+
AND version in ('v0.4.2','v0.4.4');
2323

2424

2525
ALTER MATERIALIZED VIEW supply.ego_dp_conv_powerplant_sq_mview
@@ -28,14 +28,14 @@ ALTER MATERIALIZED VIEW supply.ego_dp_conv_powerplant_sq_mview
2828
-- MView for NEP 2035
2929
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_conv_powerplant_nep2035_mview CASCADE;
3030
CREATE MATERIALIZED VIEW supply.ego_dp_conv_powerplant_nep2035_mview AS
31-
SELECT *
31+
SELECT DISTINCT*
3232
FROM supply.ego_dp_conv_powerplant
3333
WHERE scenario = 'NEP 2035'
3434
AND capacity > 0
3535
AND fuel not in ('hydro', 'run_of_river', 'reservoir')
36-
AND (shutdown IS NULL or shutdown >= 2034);
37-
--AND preversion = 'v0.3.0'
38-
--AND version = 'v0.4.4';
36+
AND (shutdown IS NULL or shutdown >= 2034)
37+
AND preversion = 'v0.3.0'
38+
AND version in ('v0.4.2','v0.4.4');
3939

4040

4141
ALTER MATERIALIZED VIEW supply.ego_dp_conv_powerplant_nep2035_mview
@@ -44,7 +44,7 @@ ALTER MATERIALIZED VIEW supply.ego_dp_conv_powerplant_nep2035_mview
4444
-- MView for eGo 100
4545
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_conv_powerplant_ego100_mview CASCADE;
4646
CREATE MATERIALIZED VIEW supply.ego_dp_conv_powerplant_ego100_mview AS
47-
SELECT
47+
SELECT DISTINCT
4848
version,
4949
preversion,
5050
id,
@@ -91,9 +91,9 @@ CREATE MATERIALIZED VIEW supply.ego_dp_conv_powerplant_ego100_mview AS
9191
WHERE scenario in('NEP 2035')
9292
AND fuel = 'pumped_storage'
9393
AND capacity > 0
94-
AND (shutdown IS NULL or shutdown >= 2049);
95-
--AND preversion = 'v0.3.0'
96-
--AND version = 'v0.4.4';
94+
AND (shutdown IS NULL or shutdown >= 2049)
95+
AND preversion = 'v0.3.0'
96+
AND version in ('v0.4.2','v0.4.4');
9797

9898

9999
ALTER MATERIALIZED VIEW supply.ego_dp_conv_powerplant_ego100_mview
@@ -109,12 +109,12 @@ SELECT scenario_log('eGo_DP','v0.4.4','result','supply','ego_dp_conv_powerplant_
109109
-- MView for Status Quo
110110
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_res_powerplant_sq_mview CASCADE;
111111
CREATE MATERIALIZED VIEW supply.ego_dp_res_powerplant_sq_mview AS
112-
SELECT *
112+
SELECT DISTINCT*
113113
FROM supply.ego_dp_res_powerplant
114114
WHERE scenario = 'Status Quo'
115-
AND electrical_capacity > 0;
116-
--AND preversion = 'v0.3.0'
117-
--AND version = 'v0.4.4';
115+
AND electrical_capacity > 0
116+
AND preversion = 'v0.3.0'
117+
AND version in ('v0.4.2','v0.4.4');
118118

119119

120120
ALTER MATERIALIZED VIEW supply.ego_dp_res_powerplant_sq_mview
@@ -123,124 +123,123 @@ ALTER MATERIALIZED VIEW supply.ego_dp_res_powerplant_sq_mview
123123
-- MView for NEP 2035
124124
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_res_powerplant_nep2035_mview CASCADE;
125125
CREATE MATERIALIZED VIEW supply.ego_dp_res_powerplant_nep2035_mview AS
126-
SELECT
126+
SELECT
127127
sub.*
128128
FROM (
129-
SELECT DISTINCT ON (id)
129+
SELECT DISTINCT ON (id||version)
130130
*
131131
FROM
132132
supply.ego_dp_res_powerplant
133-
WHERE id not in (
134-
SELECT id
133+
WHERE id||version not in (
134+
SELECT id||version
135135
FROM supply.ego_dp_res_powerplant
136-
--WHERE version = 'v0.4.4'
137-
Group BY id
136+
WHERE version in ('v0.4.2','v0.4.4')
137+
Group BY id||version
138138
HAVING count(*) > 1
139-
Order by id)
139+
Order by id||version)
140140
AND scenario = 'Status Quo'
141-
--And preversion = 'v0.3.0'
142-
--AND version = 'v0.4.4'
143-
141+
And preversion = 'v0.3.0'
142+
AND version in ('v0.4.2','v0.4.4')
144143
AND electrical_capacity > 0
145-
ORDER BY id
144+
ORDER BY id||version
146145
) as sub
147146
UNION
148-
SELECT
147+
SELECT
149148
sub2.*
150149
FROM (
151-
SELECT DISTINCT ON (id)
150+
SELECT DISTINCT ON (id||version)
152151
*
153152
FROM
154153
supply.ego_dp_res_powerplant
155-
WHERE id in (
156-
SELECT id
154+
WHERE id||version in (
155+
SELECT id||version
157156
FROM supply.ego_dp_res_powerplant
158157
WHERE scenario in ('NEP 2035')
159-
--AND version = 'v0.4.4'
160-
Group BY id
161-
Order by id)
158+
AND version in ('v0.4.2','v0.4.4')
159+
Group BY id||version
160+
Order by id||version)
162161
AND scenario in ('NEP 2035')
163-
--And preversion = 'v0.3.0'
164-
-- AND version = 'v0.4.4'
162+
And preversion = 'v0.3.0'
163+
AND version in ('v0.4.2','v0.4.4')
165164
AND electrical_capacity > 0
166-
ORDER BY id
165+
ORDER BY id||version
167166
) sub2
168167
Order by id;
169168

170169
ALTER MATERIALIZED VIEW supply.ego_dp_res_powerplant_nep2035_mview
171-
OWNER TO oeuser;
170+
OWNER TO oeuser;
172171

173172
-- MView for eGo 100
174173
DROP MATERIALIZED VIEW IF EXISTS supply.ego_dp_res_powerplant_ego100_mview CASCADE;
175174
CREATE MATERIALIZED VIEW supply.ego_dp_res_powerplant_ego100_mview AS
176-
SELECT DISTINCT ON (id)
175+
SELECT DISTINCT ON (id||version)
177176
sub.*
178177
FROM (
179-
SELECT DISTINCT ON (id)
178+
SELECT DISTINCT ON (id||version)
180179
*
181180
FROM
182181
supply.ego_dp_res_powerplant
183-
WHERE id not in (
184-
SELECT id
182+
WHERE id||version not in (
183+
SELECT id||version
185184
FROM supply.ego_dp_res_powerplant
186-
-- WHERE version = 'v0.4.4'
187-
Group BY id
185+
WHERE version in ('v0.4.2','v0.4.4')
186+
Group BY id||version
188187
HAVING count(*) > 1
189-
Order by id)
188+
Order by id||version)
190189
AND scenario = 'Status Quo'
191-
-- AND preversion = 'v0.3.0'
192-
-- AND version = 'v0.4.4'
190+
AND preversion = 'v0.3.0'
191+
AND version in ('v0.4.2','v0.4.4')
193192
AND electrical_capacity > 0
194193
AND generation_type in ('solar','wind')
195194
AND generation_subtype not in ('wind_offshore')
196-
ORDER BY id
195+
ORDER BY id||version
197196
) as sub
198197
UNION
199-
SELECT DISTINCT ON (id)
198+
SELECT DISTINCT ON (id||version)
200199
sub2.*
201200
FROM (
202-
SELECT DISTINCT ON (id)
201+
SELECT DISTINCT ON (id||version)
203202
*
204203
FROM
205204
supply.ego_dp_res_powerplant
206-
WHERE id in (
207-
SELECT id
205+
WHERE id||version in (
206+
SELECT id||version
208207
FROM supply.ego_dp_res_powerplant
209208
WHERE scenario in ('eGo 100')
210209
AND generation_type not in ('gas')
211-
--AND version = 'v0.4.4'
210+
AND version in ('v0.4.2','v0.4.4')
212211
AND flag in ('commissioning', 'repowering')
213-
Group BY id
214-
Order by id)
212+
Group BY id||version
213+
Order by id||version)
215214
AND scenario in ('eGo 100')
216-
--And preversion = 'v0.3.0'
217-
--AND version = 'v0.4.4'
215+
And preversion = 'v0.3.0'
216+
AND version in ('v0.4.2','v0.4.4')
218217
AND electrical_capacity > 0
219-
ORDER BY id
218+
ORDER BY id||version
220219
) sub2
221220
UNION
222-
SELECT DISTINCT ON (id)
221+
SELECT DISTINCT ON (id||version)
223222
sub3.*
224223
FROM (
225-
SELECT DISTINCT ON (id)
224+
SELECT DISTINCT ON (id||version)
226225
*
227226
FROM
228227
supply.ego_dp_res_powerplant
229-
WHERE id in (
230-
SELECT id
228+
WHERE id||version in (
229+
SELECT id||version
231230
FROM supply.ego_dp_res_powerplant
232231
WHERE scenario in ('NEP 2035')
233-
--AND version = 'v0.4.4'
232+
AND version in ('v0.4.2','v0.4.4')
234233
AND generation_type not in ('biomass','gas','reservoir','run_of_river')
235234
AND flag in ('commissioning', 'repowering')
236235
AND generation_subtype not in ('wind_offshore')
237-
Group BY id
238-
Order by id)
236+
Group BY id||version
237+
Order by id||version)
239238
AND scenario in ('NEP 2035')
240-
--And preversion = 'v0.3.0'
241-
--AND version = 'v0.4.4'
239+
And preversion = 'v0.3.0'
240+
AND version in ('v0.4.2','v0.4.4')
242241
AND electrical_capacity > 0
243-
ORDER BY id
242+
ORDER BY id||version
244243
) sub3
245244
Order by id;
246245

0 commit comments

Comments
 (0)