source: trunk/import/staedtische_FS_aus_ALKIS_rlp.sql @ 335

Revision 335, 4.5 KB checked in by frank.jaeger, 10 years ago (diff)

WMS: Filter Historisch ("endet IS NULL" in Data), View für den WMS "Flurstücke kommunal" für variable gml-IDs angepasst.

Line 
1
2-- ===========================================================
3-- Kommunale FlurstÃŒcke aus ALKIS selektieren
4-- ===========================================================
5
6-- Individuelle Auswertung "Kommunales Eigentum" fÃŒr eine Stadt oder Gemeinde.
7-- Ggf. mÌssen verschiedene Schreibweisen des EigentÌmers oder ZusÀtze zum Namen berÌcksichtigt werden.
8
9-- Stand:
10--  2013-11-26 Version fÃŒr die ALKIS-Musterdaten RLP Mustermonzel
11--  2014-08-29 Umstellung auf Datenstruktur PostNAS 0.8 (ohne Tabelle "alkis_beziehungen")
12--  2014-09-16 Substring fuer variabal lange gml_id
13
14-- Voraussetzung = View "doppelverbindung" aus ALKIS PostNAS-Projekt Datei "sichten.sql"
15
16
17-- View fÃŒr Shape-Export
18-- ---------------------
19
20--           DROP VIEW staedtische_flurstuecke;
21CREATE OR REPLACE VIEW staedtische_flurstuecke
22AS
23  SELECT
24     f.gml_id,
25     f.land, f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner,
26     f.amtlicheflaeche,
27     f.wkb_geometry
28  FROM ax_flurstueck    f                                        -- FlurstÃŒck
29  JOIN doppelverbindung d    ON d.fsgml = f.gml_id               -- beide FÀlle ÃŒber Union-View: direkt und ÃŒber Recht von BS an BS
30  JOIN ax_buchungsstelle s   ON d.bsgml = s.gml_id               -- Buchungs-Stelle
31--JOIN ax_buchungsstelle_buchungsart b ON s.buchungsart = b.wert -- EnstschlÃŒsselung Buchungsart
32 
33-- Bei gml_id character(16):
34--JOIN ax_buchungsblatt  gb  ON gb.gml_id = s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
35--JOIN ax_namensnummer nn    ON gb.gml_id = nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
36--JOIN ax_person p           ON p.gml_id  = nn.benennt           -- NamNum  >benennt> Person
37
38-- Bei gml_id character varying:
39  JOIN ax_buchungsblatt  gb  ON substring(gb.gml_id,1,16)=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
40  JOIN ax_namensnummer nn    ON substring(gb.gml_id,1,16)=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
41  JOIN ax_person p           ON substring(p.gml_id,1,16) =nn.benennt           -- NamNum  >benennt> Person
42 
43 WHERE f.endet  IS NULL
44   AND s.endet  IS NULL
45   AND gb.endet IS NULL
46   AND nn.endet IS NULL
47   AND p.endet  IS NULL
48   AND p.nachnameoderfirma = 'Ortsgemeinde Osann-Monzel'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
49
50-- Bei Schreib-Varianten wie "Stadt XXX - Wasserwerke -" oder  "Stadt XXX - Kanalbetriebe -"
51-- muss hier ggf. der LIKE-Operator verwendet werden: LIKE "Stadt XXX%"
52
53COMMENT ON VIEW staedtische_flurstuecke  IS 'FlurstÃŒcke der Ortsgemeinde Osann-Monzel. FÃŒr Shape-Export: Mit Kennzeichen und FlÀche';
54
55
56-- View fÃŒr WMS
57-- ---------------------
58
59--        DROP    VIEW st_flurst;
60CREATE OR REPLACE VIEW st_flurst
61AS
62  SELECT
63     f.gml_id,
64     d.ba_dien, -- Buchungsart der dienenden Buchung --> CLASSITEM im WMS
65     f.wkb_geometry
66  FROM ax_flurstueck    f                                        -- FlurstÃŒck
67  JOIN doppelverbindung d    ON d.fsgml = f.gml_id               -- beide FÀlle ÃŒber Union-View: direkt und ÃŒber Recht von BS an BS
68  JOIN ax_buchungsstelle s   ON d.bsgml = s.gml_id               -- Buchungs-Stelle
69  JOIN ax_buchungsstelle_buchungsart b ON s.buchungsart = b.wert -- EnstschlÃŒsselung Buchungsart
70 
71-- Bei gml_id character(16):
72--JOIN ax_buchungsblatt  gb  ON gb.gml_id = s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
73--JOIN ax_namensnummer nn    ON gb.gml_id = nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
74--JOIN ax_person p           ON p.gml_id  = nn.benennt           -- NamNum  >benennt> Person
75
76-- Bei gml_id character varying:
77  JOIN ax_buchungsblatt  gb  ON substring(gb.gml_id,1,16)=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
78  JOIN ax_namensnummer nn    ON substring(gb.gml_id,1,16)=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
79  JOIN ax_person p           ON substring(p.gml_id,1,16) =nn.benennt           -- NamNum  >benennt> Person
80 
81 WHERE f.endet  IS NULL
82   AND s.endet  IS NULL
83   AND gb.endet IS NULL
84   AND nn.endet IS NULL
85   AND p.endet  IS NULL
86   AND p.nachnameoderfirma = 'Ortsgemeinde Osann-Monzel'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
87
88COMMENT ON VIEW st_flurst  IS 'FlurstÃŒcke der Ortsgemeinde Osann-Monzel. FÃŒr WMS: nur ID und Geometrie.';
89
90GRANT SELECT ON TABLE st_flurst TO ms6;
91
92
93-- Buchungsarten darin?
94/*
95 SELECT DISTINCT
96     ba_dien,
97     count(gml_id) AS anzahl
98  FROM st_flurst
99  GROUP BY ba_dien
100  ORDER BY ba_dien;
101*/
102
103-- the HAPPY end --
Note: See TracBrowser for help on using the repository browser.