Changeset 77 for trunk/data/konvert


Ignore:
Timestamp:
01/27/11 10:58:58 (13 years ago)
Author:
frank.jaeger
Message:

Neue SQL-Auswertungen Eigentümer --> Flurstücke

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/data/konvert/postnas_0.5/alkis_sichten.sql

    r69 r77  
    33-- ===== 
    44 
    5 --  PostNAS 0.3, 24.02.2009  R. Segsa, DT 
    6  
    7 --  PostNAS 0.4, 02.04.2009 
    8  
    95--  PostNAS 0.5,  
    10 --   06.01.2010  F, Jaeger, KRZ 
    11 --   21.01.2010  F.J. ap-pto.art 
    12 --   14.06.2010  F.J. GRANT entfernt 
    13 --   24.09.2010  F.J. "s_flurstueck_nr" ersetzt "s_flurstuecksnummer_flurstueck" (Bruchnummer) 
    14 --   01.12.2010  F.J. Gemeinde/Gemarkung 
    15  
    16 --   Verbindungen werden seit PostNAS 0.5 nicht mehr nachtrÀglich mit einem Script generiert 
    17 --   sondern vom Konverter PostNAS gesetzt. 
    18 --   Jetzt zentrale Tabelle "alkis_beziehungen" statt der Felder (ForeignKey) in den einzelnen Tabellen. 
     6--  01.12.2010  F.J. Gemeinde/Gemarkung 
     7--  26.01.2011  F.J. Liste der Hausnummern in einer Gemeinde 
     8--  27.01.2011  F.J. Auflistung der FlurstÃŒcke eines (kommunalen) EigentÃŒmers 
    199 
    2010 
     
    4131 
    4232 
    43 -- Version "s_flurstuecksnummer_flurstueck" bis 24.09.2010,  
    44 -- wird ersetzt durch "s_flurstueck_nr" 
    45  
    46 --CREATE OR REPLACE VIEW s_flurstuecksnummer_flurstueck  
    47 --AS  
    48 -- SELECT ap_pto.ogc_fid,  
    49 --        ap_pto.wkb_geometry,  
    50 --        ax_flurstueck.flurstueckskennzeichen,  
    51 --        ax_flurstueck.zaehler,                 -- umn: LABELITEM 
    52 --        ax_flurstueck.nenner 
    53 --   FROM ap_pto 
    54 --   JOIN alkis_beziehungen  
    55 --     ON ap_pto.gml_id = alkis_beziehungen.beziehung_von 
    56 --   JOIN ax_flurstueck  
    57 --     ON alkis_beziehungen.beziehung_zu = ax_flurstueck.gml_id 
    58 --  WHERE alkis_beziehungen.beziehungsart = 'dientZurDarstellungVon'; 
    59  
    60  
    6133-- Bruchnummerierung erzeugen 
    62 -- (ersetzt s_flurstuecksnummer_flurstueck ab Sept. 2010) 
    63 --DROP VIEW s_flurstueck_nr; 
     34 
    6435CREATE OR REPLACE VIEW s_flurstueck_nr 
    6536AS  
     
    8758-- --------------------- 
    8859 
    89 --CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
    90 --AS  
    91 -- SELECT ap_pto.ogc_fid,  
    92 --        ap_pto.wkb_geometry,  
    93 --        ap_pto.drehwinkel * 57.296 AS drehwinkel,   -- umn: ANGLE [drehwinkel] 
    94 --        ax_lagebezeichnungmithausnummer.hausnummer  -- umn: LABELITEM 
    95 --   FROM ap_pto 
    96 --   JOIN alkis_beziehungen  
    97 --     ON ap_pto.gml_id = alkis_beziehungen.beziehung_von 
    98 --   JOIN ax_lagebezeichnungmithausnummer  
    99 --     ON alkis_beziehungen.beziehung_zu  = ax_lagebezeichnungmithausnummer.gml_id 
    100 --  WHERE ap_pto.art = 'HNR'  -- Hausnummer 
    101 --     AND alkis_beziehungen.beziehungsart = 'dientZurDarstellungVon'; 
    102  
    103  
    10460-- In einigen Gebieten in Lippe enthÀlt das Feld "ap_pto.art" 
    10561-- nicht den Wert 'HNR'. Die Hausnummer fehlt dann im WMS. 
    10662-- Die Bedingung vorÃŒbergehend heraus nehmen. Ursache klÀren! 
    107  
    10863 
    10964CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
     
    12176 
    12277COMMENT ON VIEW s_hausnummer_gebaeude IS 'fuer Kartendarstellung: Hausnummern HauptgebÀude'; 
    123  
    12478 
    12579 
     
    167121-- Texte, die nicht schon in einem anderen Layer ausgegeben werden 
    168122 
    169  
    170123CREATE OR REPLACE VIEW s_beschriftung  
    171124AS  
     
    186139-- Lippe: Der Wert 'ZAE_NEN' fehlt. Diese FÀlle anders identifizieren? 
    187140 
    188 GRANT SELECT ON TABLE s_beschriftung                    TO ms5; 
    189  
    190141COMMENT ON VIEW s_beschriftung IS 'ap_pto, die noch nicht in anderen Layern angezeigt werden'; 
    191142 
     
    193144--  Sichten fuer Fehlersuche und Daten-Analyse 
    194145--  ------------------------------------------ 
    195  
    196146 
    197147-- Zeigt die Texte an, die nicht in einem der Mapfile-Views verarbeitet werden 
     
    212162 
    213163 
    214  
    215164-- Analyse zu o.g. Fehler: 
    216165--  Welche Inhalte kommen im Feld ap_pto.art vor? 
     
    261210 
    262211-- Nach Laden der Keytables: 
    263  
    264212 
    265213-- MAP ALT: 
     
    277225         a.bezeichner  AS adfbez,      -- Art der Festlegung - Bezeichnung 
    278226         d.bezeichnung AS stellbez     -- Stelle Bezeichnung 
    279       -- , d.stellenart  --- weiter entschluesseln? 
     227      -- , d.stellenart                -- weiter entschluesseln? 
    280228    FROM ax_bauraumoderbodenordnungsrecht r 
    281229    LEFT JOIN ax_bauraumoderbodenordnungsrecht_artderfestlegung a 
     
    320268 
    321269 
     270-- A d r e s s e n  
     271 
     272-- Verschluesselte Lagebezeichnung (Strasse und Hausnummer) fuer eine Gemeinde 
     273-- Schluessel der Gemeinde nach Bedarf anpassen! 
     274 
     275CREATE VIEW  adressen_hausnummern 
     276AS 
     277    SELECT  
     278        s.bezeichnung AS strassenname,  
     279         g.bezeichnung AS gemeindename,  
     280         l.land,  
     281         l.regierungsbezirk,  
     282         l.kreis,  
     283         l.gemeinde,  
     284         l.lage        AS strassenschluessel,  
     285         l.hausnummer  
     286    FROM   ax_lagebezeichnungmithausnummer l   
     287    JOIN   ax_gemeinde g  
     288      ON l.kreis=g.kreis  
     289     AND l.gemeinde=g.gemeinde  
     290    JOIN   ax_lagebezeichnungkatalogeintrag s  
     291      ON l.kreis=s.kreis  
     292     AND l.gemeinde=s.gemeinde  
     293     AND to_char(l.lage, 'FM00000')=s.lage  
     294    WHERE     l.gemeinde = 40  -- 40 = Lage 
     295 -- LIMIT 200 
     296; 
     297 
     298 
     299-- Zuordnung dieser Adressen zu Flurstuecken 
     300-- Schluessel der Gemeinde nach Bedarf anpassen! 
     301 
     302CREATE VIEW adressen_zum_flurstueck 
     303AS 
     304    SELECT 
     305           f.gemarkungsnummer,  
     306           f.flurnummer,  
     307           f.zaehler,  
     308           f.nenner, 
     309           g.bezeichnung AS gemeindename,  
     310           s.bezeichnung AS strassenname,  
     311           l.lage        AS strassenschluessel,  
     312           l.hausnummer  
     313      FROM   ax_flurstueck f  
     314      JOIN   alkis_beziehungen v  
     315        ON f.gml_id=v.beziehung_von 
     316      JOIN   ax_lagebezeichnungmithausnummer l   
     317        ON l.gml_id=v.beziehung_zu 
     318      JOIN   ax_gemeinde g  
     319        ON l.kreis=g.kreis  
     320       AND l.gemeinde=g.gemeinde  
     321      JOIN   ax_lagebezeichnungkatalogeintrag s  
     322        ON l.kreis=s.kreis  
     323       AND l.gemeinde=s.gemeinde  
     324       AND to_char(l.lage, 'FM00000')=s.lage  
     325     WHERE v.beziehungsart='weistAuf' 
     326       AND l.gemeinde = 40  -- 40 = Lage 
     327     ORDER BY  
     328           f.gemarkungsnummer, 
     329           f.flurnummer, 
     330           f.zaehler, 
     331           f.nenner 
     332   -- LIMIT 200 
     333; 
     334 
     335 
     336-- FlurstÃŒcke eines EigentÃŒmers 
     337-- ---------------------------- 
     338 
     339-- Dieser View liefert nur die (einfache) Buchungsart "GrundstÃŒck" 
     340-- Solche FÀlle wie "Erbbaurecht an GrundstÃŒck" oder "Wohnungs-/Teileigentum an aufgeteiltes GrundstÃŒck" 
     341-- oder "Miteigentum an aufteteiltes GrundstÃŒck" fehlen in deisere Auswertung. 
     342-- Dazu siehe: "rechte_eines_eigentuemers". 
     343 
     344-- Das Ergbenis ist gedacht fÃŒr den Export als CSV und Weiterverarbeitung mit einer Tabellenkalkulation 
     345-- oder einer einfachen Datenbank. 
     346 
     347-- Übersicht der Tabellen: 
     348-- 
     349-- Person <benennt< NamNum. >istBestandteilVon> Blatt <istBestandteilVon< Stelle >istGebucht> Flurstueck 
     350--                                              *-> Bezirk                *-> Buchungsart     *-> Gemarkung 
     351 
     352-- Wobei ">xxx>" = JOIN ÃŒber die Verbindungs-Tabelle "alkis_beziehungen" mit der Beziehungsart "xxx". 
     353 
     354CREATE VIEW flurstuecke_eines_eigentuemers  
     355AS  
     356   SELECT  
     357      k.bezeichnung                AS gemarkung,  
     358      k.gemarkungsnummer,  
     359      f.flurnummer                 AS flur,  
     360      f.zaehler                    AS fs_zaehler,  
     361      f.nenner                     AS fs_nenner,  
     362      f.amtlicheflaeche,  
     363   -- g.bezirk,  
     364      b.bezeichnung                AS bezirkname, 
     365      g.buchungsblattnummermitbuchstabenerweiterung AS gb_blatt,  
     366      g.blattart,  
     367      s.laufendenummer             AS bvnr,  
     368      art.bezeichner               AS buchungsart,  
     369   -- s.zaehler || '/' || s.nenner AS buchg_anteil,  
     370      n.laufendenummernachdin1421  AS lfd_name_num,  
     371   -- n.zaehler || '/' || n.nenner AS nam_anteil,  
     372      p.nachnameoderfirma  --,  
     373   -- p.vorname  
     374   FROM       ax_person              p 
     375        JOIN  alkis_beziehungen      bpn  ON bpn.beziehung_zu  = p.gml_id  
     376        JOIN  ax_namensnummer        n    ON bpn.beziehung_von =n.gml_id  
     377        JOIN  alkis_beziehungen      bng  ON n.gml_id = bng.beziehung_von  
     378        JOIN  ax_buchungsblatt       g    ON bng.beziehung_zu = g.gml_id  
     379        JOIN  ax_buchungsblattbezirk b    ON g.land = b.land AND g.bezirk = b.bezirk  
     380        JOIN  alkis_beziehungen      bgs  ON bgs.beziehung_zu = g.gml_id  
     381        JOIN  ax_buchungsstelle      s    ON s.gml_id = bgs.beziehung_von  
     382        JOIN  ax_buchungsstelle_buchungsart art ON s.buchungsart = art.wert  
     383        JOIN  alkis_beziehungen      bsf  ON bsf.beziehung_zu = s.gml_id 
     384        JOIN  ax_flurstueck          f    ON f.gml_id = bsf.beziehung_von  
     385        JOIN  ax_gemarkung           k    ON f.land = k.land AND f.gemarkungsnummer = k.gemarkungsnummer  
     386   WHERE p.nachnameoderfirma LIKE 'Stadt %'   -- ** Bei Bedarf anpassen! 
     387     AND bpn.beziehungsart = 'benennt'           -- Namennummer     >> Person 
     388     AND bng.beziehungsart = 'istBestandteilVon' -- Namensnummer    >> Grundbuch 
     389     AND bgs.beziehungsart = 'istBestandteilVon' -- Buchungs-Stelle >> Grundbuch 
     390     AND bsf.beziehungsart = 'istGebucht'        -- Flurstueck      >> Buchungs-Stelle 
     391   ORDER BY    
     392         k.bezeichnung, 
     393         f.flurnummer, 
     394         f.zaehler, 
     395         f.nenner, 
     396         g.bezirk,  
     397         g.buchungsblattnummermitbuchstabenerweiterung, 
     398         s.laufendenummer  
     399; 
     400 
     401 
     402-- Rechte eines EigentÃŒmers 
     403-- ------------------------ 
     404 
     405-- Dieser View sucht speziell die FÀlle wo eine Buchungsstelle ein Recht "an" einer anderen Buchungsstelle hat. 
     406--  - "Erbbaurecht *an* GrundstÃŒck"  
     407--  - "Wohnungs-/Teileigentum *an* Aufgeteiltes GrundstÃŒck" 
     408--  - "Miteigentum *an* Aufteteiltes GrundstÃŒck" 
     409-- Suchkriterium ist der Name des EigentÃŒmers auf dem "herrschenden" Grundbuch, also dem Besitzer des Rechtes. 
     410 
     411-- Diese FÀlle fehlen im View "flurstuecke_eines_eigentuemers". 
     412 
     413-- Übersicht der Tabellen: 
     414-- 
     415-- Person <benennt< NamNum. >istBestandteilVon> Blatt <istBestandteilVon< Stelle-h >an> Stelle-d >istGebucht> Flurstueck 
     416--  
     417 
     418-- Wobei ">xxx>" = JOIN ÃŒber die Verbindungs-Tabelle "alkis_beziehungen" mit der Beziehungsart "xxx". 
     419 
     420 
     421CREATE VIEW rechte_eines_eigentuemers  
     422AS 
     423   SELECT  
     424      k.bezeichnung                AS gemarkung,  
     425      k.gemarkungsnummer,  
     426      f.flurnummer                 AS flur,  
     427      f.zaehler                    AS fs_zaehler,  
     428      f.nenner                     AS fs_nenner,  
     429      f.amtlicheflaeche,  
     430   -- g.bezirk,  
     431      b.bezeichnung                AS bezirkname, 
     432      g.buchungsblattnummermitbuchstabenerweiterung AS gb_blatt,  
     433   -- g.blattart,  
     434      sh.laufendenummer            AS bvnr_herr,  
     435      sh.zaehler || '/' || sh.nenner AS buchg_anteil_herr,  
     436      arth.bezeichner              AS buchungsart_herrschend,  
     437      bss.beziehungsart            AS bez_art, 
     438      artd.bezeichner              AS buchungsart_dienend,  
     439      sd.laufendenummer            AS bvnr_dien,  
     440   -- sd.zaehler || '/' || sd.nenner AS buchg_anteil_dien, 
     441      n.laufendenummernachdin1421  AS lfd_name_num,  
     442   -- n.zaehler || '/' || n.nenner AS nam_anteil,  
     443      p.nachnameoderfirma  --,  
     444   -- p.vorname  
     445   FROM       ax_person              p 
     446        JOIN  alkis_beziehungen      bpn  ON bpn.beziehung_zu  = p.gml_id  
     447        JOIN  ax_namensnummer        n    ON bpn.beziehung_von =n.gml_id  
     448        JOIN  alkis_beziehungen      bng  ON n.gml_id = bng.beziehung_von  
     449        JOIN  ax_buchungsblatt       g    ON bng.beziehung_zu = g.gml_id  
     450        JOIN  ax_buchungsblattbezirk b    ON g.land = b.land AND g.bezirk = b.bezirk  
     451        JOIN  alkis_beziehungen      bgs  ON bgs.beziehung_zu = g.gml_id  
     452        JOIN  ax_buchungsstelle      sh   ON sh.gml_id = bgs.beziehung_von  -- herrschende Buchung 
     453        JOIN  ax_buchungsstelle_buchungsart arth ON sh.buchungsart = arth.wert  
     454        JOIN  alkis_beziehungen      bss  ON sh.gml_id = bss.beziehung_von 
     455        JOIN  ax_buchungsstelle      sd   ON sd.gml_id = bss.beziehung_zu   -- dienende Buchung 
     456        JOIN  ax_buchungsstelle_buchungsart artd ON sd.buchungsart = artd.wert  
     457        JOIN  alkis_beziehungen      bsf  ON bsf.beziehung_zu = sd.gml_id 
     458        JOIN  ax_flurstueck          f    ON f.gml_id = bsf.beziehung_von  
     459        JOIN  ax_gemarkung           k    ON f.land = k.land AND f.gemarkungsnummer = k.gemarkungsnummer  
     460   WHERE p.nachnameoderfirma LIKE 'Stadt %'   -- ** Bei Bedarf anpassen! 
     461     AND bpn.beziehungsart = 'benennt'           -- Namennummer     >> Person 
     462     AND bng.beziehungsart = 'istBestandteilVon' -- Namensnummer    >> Grundbuch 
     463     AND bgs.beziehungsart = 'istBestandteilVon' -- B-Stelle herr   >> Grundbuch 
     464     AND bss.beziehungsart in ('an','zu')        -- B-Stelle herr.  >> B-Stelle dien. 
     465     AND bsf.beziehungsart = 'istGebucht'        -- Flurstueck      >> B-Stelle dien 
     466   ORDER BY    
     467         k.bezeichnung, 
     468         f.flurnummer, 
     469         f.zaehler, 
     470         f.nenner, 
     471         g.bezirk,  
     472         g.buchungsblattnummermitbuchstabenerweiterung, 
     473         sh.laufendenummer  
     474; 
     475 
    322476 
    323477-- END -- 
Note: See TracChangeset for help on using the changeset viewer.