Mercurial > gemma
annotate schema/updates/1112/01.cleanup_views.sql @ 4358:a7196b55c064
Remove VIEW columns ignored by GeoServer
Removed columns were ignored with a warning on layer creation.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Mon, 09 Sep 2019 16:13:26 +0200 |
parents | |
children | 81dc260b38aa |
rev | line source |
---|---|
4358
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
1 DROP VIEW waterway.gauges_geoserver CASCADE; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
2 CREATE VIEW waterway.gauges_geoserver AS |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
3 SELECT |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
4 isrs_code, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
5 objname, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
6 geom, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
7 applicability_from_km, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
8 applicability_to_km, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
9 zero_point, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
10 geodref, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
11 date_info, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
12 source_organization, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
13 reference_water_levels, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
14 gm_measuredate, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
15 gm_waterlevel, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
16 gm_n_14d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
17 forecast_accuracy_3d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
18 forecast_accuracy_1d |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
19 FROM waterway.gauges_base_view |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
20 WHERE NOT erased; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
21 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
22 DROP VIEW waterway.distance_marks_geoserver; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
23 CREATE VIEW waterway.distance_marks_geoserver AS |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
24 SELECT |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
25 isrs_asText(location_code) AS location, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
26 geom::Geometry(POINT, 4326), |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
27 related_enc, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
28 (location_code).hectometre |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
29 FROM waterway.distance_marks_virtual; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
30 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
31 DROP VIEW waterway.bottlenecks_geoserver; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
32 CREATE OR REPLACE VIEW waterway.bottlenecks_geoserver AS |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
33 SELECT |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
34 b.id, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
35 b.bottleneck_id, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
36 b.objnam, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
37 b.nobjnm, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
38 b.area, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
39 b.rb, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
40 b.lb, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
41 b.responsible_country, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
42 b.revisiting_time, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
43 b.limiting, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
44 b.date_info, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
45 b.source_organization, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
46 g.objname AS gauge_objname, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
47 g.reference_water_levels, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
48 fal.date_info AS fa_date_info, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
49 fal.critical AS fa_critical, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
50 g.gm_measuredate, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
51 g.gm_waterlevel, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
52 g.gm_n_14d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
53 srl.date_max, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
54 g.forecast_accuracy_3d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
55 g.forecast_accuracy_1d |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
56 FROM waterway.bottlenecks b |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
57 LEFT JOIN waterway.gauges_base_view g |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
58 ON b.gauge_location = g.location AND g.validity @> current_timestamp |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
59 LEFT JOIN (SELECT DISTINCT ON (bottleneck_id) |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
60 bottleneck_id, date_info, critical |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
61 FROM waterway.fairway_availability |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
62 ORDER BY bottleneck_id, date_info DESC) AS fal |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
63 ON b.bottleneck_id = fal.bottleneck_id |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
64 LEFT JOIN (SELECT DISTINCT ON (bottleneck_id) |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
65 bottleneck_id, max(date_info) AS date_max |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
66 FROM waterway.sounding_results |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
67 GROUP BY bottleneck_id |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
68 ORDER BY bottleneck_id DESC) AS srl |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
69 ON b.bottleneck_id = srl.bottleneck_id |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
70 WHERE b.validity @> current_timestamp; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
71 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
72 CREATE VIEW waterway.stretches_geoserver AS |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
73 SELECT |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
74 s.id, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
75 s.name, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
76 (s.stretch).lower::varchar as lower, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
77 (s.stretch).upper::varchar as upper, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
78 s.area::Geometry(MULTIPOLYGON, 4326), |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
79 s.objnam, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
80 s.nobjnam, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
81 s.date_info, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
82 s.source_organization, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
83 (SELECT string_agg(country_code, ', ') |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
84 FROM waterway.stretch_countries |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
85 WHERE stretches_id = s.id) AS countries, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
86 s.staging_done, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
87 min(g.gm_measuredate) AS gm_measuredate, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
88 min(g.gm_n_14d) AS gm_n_14d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
89 max(g.forecast_accuracy_3d) AS forecast_accuracy_3d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
90 max(g.forecast_accuracy_1d) AS forecast_accuracy_1d |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
91 FROM waterway.stretches s |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
92 LEFT JOIN waterway.gauges_geoserver g |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
93 ON isrs_fromtext(g.isrs_code) <@ s.stretch |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
94 GROUP BY s.id; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
95 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
96 CREATE VIEW waterway.sections_geoserver AS |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
97 SELECT |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
98 s.id, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
99 s.name, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
100 (s.section).lower::varchar as lower, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
101 (s.section).upper::varchar as upper, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
102 s.area::Geometry(MULTIPOLYGON, 4326), |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
103 s.objnam, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
104 s.nobjnam, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
105 s.date_info, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
106 s.source_organization, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
107 s.staging_done, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
108 min(g.gm_measuredate) AS gm_measuredate, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
109 min(g.gm_n_14d) AS gm_n_14d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
110 max(g.forecast_accuracy_3d) AS forecast_accuracy_3d, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
111 max(g.forecast_accuracy_1d) AS forecast_accuracy_1d |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
112 FROM waterway.sections s |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
113 LEFT JOIN waterway.gauges_geoserver g |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
114 ON isrs_fromtext(g.isrs_code) <@ s.section |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
115 GROUP BY s.id; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
116 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
117 UPDATE waterway.gt_pk_metadata SET pk_column = 'isrs_code' |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
118 WHERE table_schema = 'waterway' |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
119 AND table_name = 'gauges_geoserver'; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
120 UPDATE waterway.gt_pk_metadata SET pk_column = 'location' |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
121 WHERE table_schema = 'waterway' |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
122 AND table_name = 'distance_marks_geoserver'; |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
123 |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
124 GRANT SELECT ON |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
125 waterway.gauges_geoserver, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
126 waterway.distance_marks_geoserver, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
127 waterway.bottlenecks_geoserver, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
128 waterway.stretches_geoserver, |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
129 waterway.sections_geoserver |
a7196b55c064
Remove VIEW columns ignored by GeoServer
Tom Gottfried <tom@intevation.de>
parents:
diff
changeset
|
130 TO waterway_user; |