GLE-Postgis-Wege- und Routennetz Views
Aus kvwmap
Version vom 6. Januar 2016, 14:20 Uhr von Markus Hentschel (Diskussion | Beiträge)
Views Kategorien Rad
CREATE OR REPLACE VIEW wegenetz_b.kategorien_rad_1_3_4 AS
( SELECT wegabschnitte.oid, 'rad'::text AS art, 'Kategorie 1'::text AS kategorie, wegabschnitte.wid, 'keine Einschränkung'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_rad = false AND wegabschnitte.wegbreite >= 2.5 AND (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = '1'::text)) AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text <> 'Poller'::text)) AND (wegabschnitte.kfzverkehr::text = 'Selbständiger Weg'::text OR wegabschnitte.kfzverkehr::text = 'Straßenbegleitender Weg'::text) AND wegabschnitte.wohlbefinden::text = 'keine Beeinträchtigung'::text AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung
WHERE weg2strassenquerung.querungsart::text = 'ungesicherte Querung'::text))
UNION
SELECT wegabschnitte.oid, 'rad'::text AS art, 'Kategorie 4'::text AS kategorie, wegabschnitte.wid, 'Radfahrverbot'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_rad = true)
UNION
SELECT wegabschnitte.oid, 'rad'::text AS art, 'Kategorie 3'::text AS kategorie, wegabschnitte.wid, rtrim(((
CASE
WHEN wegabschnitte.wegbreite < 2::numeric AND wegabschnitte.wegbreite > 0::numeric THEN 'Wegbreite < 2 m, '::text
ELSE ::text
END ||
CASE
WHEN wegabschnitte.wegbreite IS NULL THEN 'Wegbreite unbekannt, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = '3'::text)) THEN 'ungeeignete Ausbauart oder Mangel/Gefahrenstelle, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = 'unbekannt'::text)) THEN 'Ausbauart unbekannt'::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_rad = false AND (wegabschnitte.wegbreite < 2::numeric OR wegabschnitte.wegbreite IS NULL OR (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = '3'::text OR zustand_rad.zustand_rad = 'unbekannt'::text)));
CREATE OR REPLACE VIEW wegenetz_b.kategorien_rad_2 AS
SELECT wegabschnitte.oid, 'rad'::text AS art, 'Kategorie 2'::text AS kategorie, wegabschnitte.wid, rtrim((((
CASE
WHEN wegabschnitte.wegbreite >= 2::numeric AND wegabschnitte.wegbreite < 2.5 THEN 'Wegbreite >= 2 m und < 2,5 m, '::text
ELSE ::text
END ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = '2'::text)) THEN 'ausreichende Ausbauart oder Mangel/Gefahrenstelle, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.kfzverkehr::text <> 'Selbständiger Weg'::text AND wegabschnitte.kfzverkehr::text <> 'Straßenbegleitender Weg'::text THEN 'nicht selbständig geführter oder straßenbegleitender Weg, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.wohlbefinden::text <> 'keine Beeinträchtigung'::text THEN 'Beeinträchtigung des Wohlbefindens, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung
WHERE weg2strassenquerung.querungsart::text = 'ungesicherte Querung'::text)) THEN 'ungesicherte Straßenquerung'::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND NOT (wegabschnitte.wid IN ( SELECT kategorien_rad_1_3_4.wid
FROM wegenetz_b.kategorien_rad_1_3_4));
CREATE OR REPLACE VIEW wegenetz_b.kategorien_rad_alle AS
SELECT kategorien_rad_1_3_4.oid, kategorien_rad_1_3_4.art, kategorien_rad_1_3_4.kategorie, kategorien_rad_1_3_4.wid, kategorien_rad_1_3_4.grund, kategorien_rad_1_3_4.the_geom
FROM wegenetz_b.kategorien_rad_1_3_4
UNION
SELECT kategorien_rad_2.oid, kategorien_rad_2.art, kategorien_rad_2.kategorie, kategorien_rad_2.wid, kategorien_rad_2.grund, kategorien_rad_2.the_geom
FROM wegenetz_b.kategorien_rad_2;
Views Kategorien Reiten
CREATE OR REPLACE VIEW wegenetz_b.kategorien_reiten_1_3_4 AS
( SELECT wegabschnitte.oid, 'reiten'::text AS art, 'Kategorie 1'::text AS kategorie, wegabschnitte.wid, 'keine Einschränkung'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_reiten = false AND wegabschnitte.wegbreite >= 2.5 AND (wegabschnitte.wid IN ( SELECT zustand_reiten.wid
FROM wegenetz_b.zustand_reiten
WHERE zustand_reiten.zustand_reiten = '1'::text)) AND (wegabschnitte.kfzverkehr::text = 'Selbständiger Weg'::text OR wegabschnitte.kfzverkehr::text = 'Straßenbegleitender Weg'::text) AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen)) AND wegabschnitte.wohlbefinden::text = 'keine Beeinträchtigung'::text AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung))
UNION
SELECT wegabschnitte.oid, 'reiten'::text AS art, 'Kategorie 4'::text AS kategorie, wegabschnitte.wid, 'Reitverbot'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_reiten = true)
UNION
SELECT wegabschnitte.oid, 'reiten'::text AS art, 'Kategorie 3'::text AS kategorie, wegabschnitte.wid, rtrim(((((
CASE
WHEN wegabschnitte.verbot_reiten = true THEN 'Verbot Reiten, '::text
ELSE ::text
END ||
CASE
WHEN wegabschnitte.wegbreite < 1::numeric AND wegabschnitte.wegbreite > 1::numeric THEN 'Wegbreite < 1 m, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.wegbreite IS NULL THEN 'Wegbreite unbekannt, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_reiten.wid
FROM wegenetz_b.zustand_reiten
WHERE zustand_reiten.zustand_reiten = '3'::text)) THEN 'ungeeignete Ausbauart oder Mangel/Gefahrenstelle, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_reiten.wid
FROM wegenetz_b.zustand_reiten
WHERE zustand_reiten.zustand_reiten = 'unbekannt'::text)) THEN 'Ausbauart unbekannt, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.kfzverkehr IS NULL OR wegabschnitte.kfzverkehr::text = ::text THEN 'KFZ-Verkehr unbekannt'::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_reiten = false AND (wegabschnitte.wegbreite < 1::numeric OR wegabschnitte.wegbreite IS NULL OR (wegabschnitte.wid IN ( SELECT zustand_reiten.wid
FROM wegenetz_b.zustand_reiten
WHERE zustand_reiten.zustand_reiten = '3'::text OR zustand_reiten.zustand_reiten = 'unbekannt'::text)) OR wegabschnitte.kfzverkehr IS NULL OR wegabschnitte.kfzverkehr::text = ::text);
CREATE OR REPLACE VIEW wegenetz_b.kategorien_reiten_2 AS
SELECT wegabschnitte.oid, 'reiten'::text AS art, 'Kategorie 2'::text AS kategorie, wegabschnitte.wid, rtrim((((
CASE
WHEN wegabschnitte.wegbreite >= 1::numeric AND wegabschnitte.wegbreite < 2.5 THEN 'Wegbreite >= 1 m und < 2.5 m, '::text
ELSE ::text
END ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_rad.wid
FROM wegenetz_b.zustand_rad
WHERE zustand_rad.zustand_rad = '2'::text)) THEN 'ausreichende Ausbauart oder Mangel/Gefahrenstelle, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.kfzverkehr::text <> 'Selbständiger Weg'::text AND wegabschnitte.kfzverkehr::text <> 'Straßenbegleitender Weg'::text THEN 'nicht selbständig geführter oder straßenbegleitender Weg, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.wohlbefinden::text <> 'keine Beeinträchtigung'::text THEN 'Beeinträchtigung des Wohlbefindens, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung)) THEN 'ungesicherte Straßenquerung, '::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND NOT (wegabschnitte.wid IN ( SELECT kategorien_reiten_1_3_4.wid
FROM wegenetz_b.kategorien_reiten_1_3_4));
CREATE OR REPLACE VIEW wegenetz_b.kategorien_reiten_alle AS
SELECT kategorien_reiten_1_3_4.oid, kategorien_reiten_1_3_4.art, kategorien_reiten_1_3_4.kategorie, kategorien_reiten_1_3_4.wid, kategorien_reiten_1_3_4.grund, kategorien_reiten_1_3_4.the_geom
FROM wegenetz_b.kategorien_reiten_1_3_4
UNION
SELECT kategorien_reiten_2.oid, kategorien_reiten_2.art, kategorien_reiten_2.kategorie, kategorien_reiten_2.wid, kategorien_reiten_2.grund, kategorien_reiten_2.the_geom
FROM wegenetz_b.kategorien_reiten_2;
Views Kategorien Wandern
CREATE OR REPLACE VIEW wegenetz_b.kategorien_wandern_1_3_4 AS
( SELECT wegabschnitte.oid, 'wandern'::text AS art, 'Kategorie 1'::text AS kategorie, wegabschnitte.wid, 'keine Einschränkung'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_wandern = false AND wegabschnitte.wegbreite IS NOT NULL AND (wegabschnitte.wid IN ( SELECT zustand_wandern.wid
FROM wegenetz_b.zustand_wandern
WHERE zustand_wandern.zustand_wandern = '1'::text)) AND wegabschnitte.kfzverkehr::text = 'Selbständiger Weg'::text AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen)) AND wegabschnitte.wohlbefinden::text = 'keine Beeinträchtigung'::text AND NOT (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung
WHERE weg2strassenquerung.querungsart::text = 'ungesicherte Querung'::text))
UNION
SELECT wegabschnitte.oid, 'wandern'::text AS art, 'Kategorie 4'::text AS kategorie, wegabschnitte.wid, 'Verbot Fußgänger'::text AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_wandern = true)
UNION
SELECT wegabschnitte.oid, 'wandern'::text AS art, 'Kategorie 3'::text AS kategorie, wegabschnitte.wid, rtrim(((
CASE
WHEN wegabschnitte.verbot_wandern = true THEN 'Verbot Wandern, '::text
ELSE ::text
END ||
CASE
WHEN wegabschnitte.wegbreite IS NULL THEN 'Wegbreite unbekannt, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_wandern.wid
FROM wegenetz_b.zustand_wandern
WHERE zustand_wandern.zustand_wandern = '3'::text)) THEN 'ungeeignete Ausbauart oder Mangel/Gefahrenstelle'::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_wandern.wid
FROM wegenetz_b.zustand_wandern
WHERE zustand_wandern.zustand_wandern = 'unbekannt'::text)) THEN 'Ausbauart unbekannt'::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND wegabschnitte.verbot_wandern = false AND (wegabschnitte.wegbreite IS NULL OR (wegabschnitte.wid IN ( SELECT zustand_wandern.wid
FROM wegenetz_b.zustand_wandern
WHERE zustand_wandern.zustand_wandern = '3'::text OR zustand_wandern.zustand_wandern = 'unbekannt'::text)));
CREATE OR REPLACE VIEW wegenetz_b.kategorien_wandern_2 AS
SELECT wegabschnitte.oid, 'wandern'::text AS art, 'Kategorie 2'::text AS kategorie, wegabschnitte.wid, rtrim(((
CASE
WHEN (wegabschnitte.wid IN ( SELECT zustand_wandern.wid
FROM wegenetz_b.zustand_wandern
WHERE zustand_wandern.zustand_wandern = '2'::text)) THEN 'ausreichende Ausbauart oder Mangel/Gefahrenstelle, '::text
ELSE ::text
END ||
CASE
WHEN wegabschnitte.kfzverkehr::text <> 'Selbständiger Weg'::text THEN 'nicht selbständig geführter Weg, '::text
ELSE ::text
END) ||
CASE
WHEN wegabschnitte.wohlbefinden::text <> 'keine Beeinträchtigung'::text THEN 'Beeinträchtigung des Wohlbefindens, '::text
ELSE ::text
END) ||
CASE
WHEN (wegabschnitte.wid IN ( SELECT DISTINCT weg2strassenquerung.wid
FROM wegenetz_b.weg2strassenquerung
WHERE weg2strassenquerung.querungsart::text = 'ungesicherte Querung'::text)) THEN 'ungesicherte Straßenquerung'::text
ELSE ::text
END, ', '::text) AS grund, wegabschnitte.the_geom
FROM wegenetz_b.wegabschnitte_alt wegabschnitte
WHERE wegabschnitte.status::text = 'vorhanden'::text AND NOT (wegabschnitte.wid IN ( SELECT kategorien_wandern_1_3_4.wid
FROM wegenetz_b.kategorien_wandern_1_3_4));
CREATE OR REPLACE VIEW wegenetz_b.kategorien_wandern_alle AS
SELECT kategorien_wandern_1_3_4.oid, kategorien_wandern_1_3_4.art, kategorien_wandern_1_3_4.kategorie, kategorien_wandern_1_3_4.wid, kategorien_wandern_1_3_4.grund, kategorien_wandern_1_3_4.the_geom
FROM wegenetz_b.kategorien_wandern_1_3_4
UNION
SELECT kategorien_wandern_2.oid, kategorien_wandern_2.art, kategorien_wandern_2.kategorie, kategorien_wandern_2.wid, kategorien_wandern_2.grund, kategorien_wandern_2.the_geom
FROM wegenetz_b.kategorien_wandern_2;
Views Zustand
CREATE OR REPLACE VIEW wegenetz_b.zustand_rad AS
SELECT wegabschnitte.wid,
CASE
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['Asphalt'::character varying::text, 'Betonoberfläche'::character varying::text, 'Betonspurbahn'::character varying::text, 'Betonspurplatten'::character varying::text, 'Kunststeinpflaster'::character varying::text, 'wassergebundene Decke'::character varying::text]) THEN
CASE
WHEN NOT (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['Querrillen'::text, 'saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text, 'Umlaufschranken'::text]))) THEN '1'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['Querrillen'::text, 'Umlaufschranken'::text]))) THEN '2'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text]))) THEN '3'::text
ELSE NULL::text
END
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['Schotterweg'::character varying::text, 'Sand-/Kiesweg'::character varying::text, 'Waldweg'::character varying::text]) THEN
CASE
WHEN NOT (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text]))) THEN '2'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text]))) THEN '3'::text
ELSE NULL::text
END
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['Kopfsteinpflaster'::character varying::text, 'naturbelassener Weg'::character varying::text]) THEN '3'::text
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['befestigt'::character varying::text, 'versiegelt'::character varying::text, 'unbefestigt'::character varying::text, 'unbekannt'::character varying::text]) THEN 'unbekannt'::text
ELSE NULL::text
END AS zustand_rad
FROM wegenetz_b.wegabschnitte_alt wegabschnitte;
CREATE OR REPLACE VIEW wegenetz_b.zustand_reiten AS
SELECT wegabschnitte.wid,
CASE
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['wassergebundene Decke'::character varying::text, 'Sand-/Kiesweg'::character varying::text, 'Waldweg'::character varying::text, 'naturbelassener Weg'::character varying::text]) THEN
CASE
WHEN NOT (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['Querrillen'::text, 'saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text, 'Umlaufschranken'::text]))) THEN '1'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['Querrillen'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text, 'Umlaufschranken'::text]))) THEN '2'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = 'saisonal unbefahrbar'::text)) THEN '2'::text
ELSE NULL::text
END
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['Asphalt'::character varying::text, 'Betonoberfläche'::character varying::text, 'Betonspurbahn'::character varying::text, 'Betonspurplatten'::character varying::text, 'Kunststeinpflaster'::character varying::text, 'Schotterweg'::character varying::text, 'Kopfsteinpflaster'::character varying::text]) THEN '3'::text
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['befestigt'::character varying::text, 'versiegelt'::character varying::text, 'unbefestigt'::character varying::text, 'unbekannt'::character varying::text]) THEN 'unbekannt'::text
ELSE NULL::text
END AS zustand_reiten
FROM wegenetz_b.wegabschnitte_alt wegabschnitte;
CREATE OR REPLACE VIEW wegenetz_b.zustand_wandern AS
SELECT wegabschnitte.wid,
CASE
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['wassergebundene Decke'::character varying::text, 'Schotterweg'::character varying::text, 'Sand-/Kiesweg'::character varying::text, 'Waldweg'::character varying::text, 'naturbelassener Weg'::character varying::text]) THEN
CASE
WHEN NOT (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text, 'Umlaufschranken'::text]))) THEN '1'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = ANY (ARRAY['saisonal unbefahrbar'::text, 'starke Unebenheiten / Löcher'::text, 'starkes Gefälle / Steigung'::text, 'Stufen / Treppen'::text, 'Umlaufschranken'::text]))) THEN '2'::text
ELSE NULL::text
END
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['Asphalt'::character varying::text, 'Betonoberfläche'::character varying::text, 'Betonspurbahn'::character varying::text, 'Betonspurplatten'::character varying::text, 'Kunststeinpflaster'::character varying::text]) THEN
CASE
WHEN NOT (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = 'saisonal unbefahrbar'::text)) THEN '2'::text
WHEN (wegabschnitte.wid IN ( SELECT gefahrenstellen.wid
FROM wegenetz_b.gefahrenstellen
WHERE gefahrenstellen.art::text = 'saisonal unbefahrbar'::text)) THEN '3'::text
ELSE NULL::text
END
WHEN wegabschnitte.ausbauart::text = 'Kopfsteinpflaster'::character varying::text THEN '3'::text
WHEN wegabschnitte.ausbauart::text = ANY (ARRAY['befestigt'::character varying::text, 'versiegelt'::character varying::text, 'unbefestigt'::character varying::text, 'unbekannt'::character varying::text]) THEN 'unbekannt'::text
ELSE NULL::text
END AS zustand_wandern
FROM wegenetz_b.wegabschnitte_alt wegabschnitte;