source: trunk/import/sichten_ORACLE.sql @ 274

Revision 274, 19.5 KB checked in by astrid.emde, 11 years ago (diff)

GL_ID ersetzt durch GML_ID

Sichten für ORACEL angepasst, Sichten mit Geometrieoperationen müsen noch angepasst werden - siehe ToDo?

Array-Felder: Scrheibweise angepasst

RevLine 
[251]1-- Automatisch mit pg-to-oci_keytables.pl konvertiert.
2---
3---
4
5CREATE OR REPLACE VIEW S_FLURSTUECK_NR
6AS
[252]7 SELECT f.OGR_FID,
8        p.ORA_GEOMETRY,
9        f.zaehler || COALESCE ('/' || f.nenner, '') AS FSNUM
[251]10   FROM ap_pto             p
[274]11   JOIN alkis_beziehungen  v  ON p.GML_ID       = v.beziehung_von
12   JOIN ax_flurstueck      f  ON v.beziehung_zu = f.GML_ID
[251]13  WHERE v.beziehungsart = 'dientZurDarstellungVon'
14    AND p.endet IS NULL
15    AND f.endet IS NULL
16  ;
17COMMENT ON VIEW S_FLURSTUECK_NR IS 'fuer Kartendarstellung: Bruchnummerierung FlurstÃŒck';
[274]18
19-- ToDo: UNION ueber ORA_GEOMETRY  noch fehlerhaft, derzeit auskommentiert
[251]20CREATE OR REPLACE VIEW S_FLURSTUECK_NR2
21AS
[252]22  SELECT f.OGR_FID,
[274]23         --p.ORA_GEOMETRY AS wkb_geometry,
[252]24         f.zaehler || COALESCE ('/' || f.nenner, '') AS FSNUM
[251]25    FROM ap_pto             p
[274]26    JOIN alkis_beziehungen  v  ON p.GML_ID       = v.beziehung_von
27    JOIN ax_flurstueck      f  ON v.beziehung_zu = f.GML_ID
[251]28   WHERE v.beziehungsart = 'dientZurDarstellungVon'
29     AND p.endet IS NULL
30     AND f.endet IS NULL
31 UNION
[252]32  SELECT f.OGR_FID,
[274]33         --SDO_GEOM.SDO_CENTROID(f.ORA_GEOMETRY,2) AS wkb_geometry,
[252]34         f.zaehler || COALESCE ('/' || f.nenner, '') AS FSNUM
[251]35    FROM      ax_flurstueck     f
[274]36    LEFT JOIN alkis_beziehungen v  ON v.beziehung_zu = f.GML_ID
[251]37   WHERE v.beziehungsart is NULL
38     AND f.endet IS NULL
39  ;
40COMMENT ON VIEW S_FLURSTUECK_NR2 IS 'Bruchnummerierung FlurstÃŒck, auch Standard-Position. Nicht direkt fuer WMS verwenden';
[274]41
[251]42CREATE OR REPLACE VIEW S_HAUSNUMMER_GEBAEUDE
43AS
[252]44 SELECT p.OGR_FID,
45        p.ORA_GEOMETRY,
46        p.DREHWINKEL * 57.296 AS DREHWINKEL,
[251]47        l.hausnummer
48   FROM ap_pto p
49   JOIN alkis_beziehungen v
[274]50     ON p.GML_ID = v.beziehung_von
[251]51   JOIN AX_LAGEBEZEICHNUNGMITHAUSNUMME l
[274]52     ON v.beziehung_zu  = l.GML_ID
[251]53  WHERE v.beziehungsart = 'dientZurDarstellungVon'
54    AND p.endet IS NULL
55    AND l.endet IS NULL;
56COMMENT ON VIEW S_HAUSNUMMER_GEBAEUDE IS 'fuer Kartendarstellung: Hausnummern HauptgebÀude';
[274]57
[251]58CREATE OR REPLACE VIEW S_NUMMER_NEBENGEBAEUDE
59AS
[252]60 SELECT p.OGR_FID,
61        p.ORA_GEOMETRY,
62        p.DREHWINKEL * 57.296 AS DREHWINKEL,
[251]63        l.laufendenummer
64   FROM ap_pto p
65   JOIN alkis_beziehungen v
[274]66     ON p.GML_ID = v.beziehung_von
[251]67   JOIN AX_LAGEBEZEICHNUNGMITPSEUDONUM l
[274]68     ON v.beziehung_zu  = l.GML_ID
[251]69  WHERE v.beziehungsart = 'dientZurDarstellungVon'
70    AND p.endet IS NULL
71    AND l.endet IS NULL
72;
73COMMENT ON VIEW S_NUMMER_NEBENGEBAEUDE IS 'fuer Kartendarstellung: Hausnummern NebengebÀude';
[274]74
[251]75CREATE OR REPLACE VIEW S_ZUGEHOERIGKEITSHAKEN_FLURSTU
76AS
[252]77 SELECT p.OGR_FID,
78        p.ORA_GEOMETRY,
79        p.DREHWINKEL * 57.296 AS DREHWINKEL,
[251]80        f.flurstueckskennzeichen
81   FROM ap_ppo p
82   JOIN alkis_beziehungen v
[274]83     ON p.GML_ID = v.beziehung_von
[251]84   JOIN ax_flurstueck f
[274]85     ON v.beziehung_zu = f.GML_ID
[251]86  WHERE p.art = 'Haken'
87    AND v.beziehungsart = 'dientZurDarstellungVon'
88    AND f.endet IS NULL
89    AND p.endet IS NULL;
90COMMENT ON VIEW S_ZUGEHOERIGKEITSHAKEN_FLURSTU IS 'fuer Kartendarstellung';
[274]91
[251]92CREATE OR REPLACE VIEW S_ZUORDUNGSPFEIL_FLURSTUECK
93AS
[252]94 SELECT l.OGR_FID,
95        l.ORA_GEOMETRY
[251]96   FROM ap_lpo l
97   JOIN alkis_beziehungen v
[274]98     ON l.GML_ID = v.beziehung_von
[251]99   JOIN ax_flurstueck f
[274]100     ON v.beziehung_zu = f.GML_ID
[251]101  WHERE l.art = 'Pfeil'
102    AND v.beziehungsart = 'dientZurDarstellungVon'
[274]103    -- AND ('DKKM1000' ~~ ANY (l.advstandardmodell))
104    AND instr(l.advstandardmodell,'DKKM1000') > 0
[251]105    AND f.endet IS NULL
106    AND l.endet IS NULL;
107COMMENT ON VIEW S_ZUORDUNGSPFEIL_FLURSTUECK IS 'fuer Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer';
[274]108
109-- ToDo Berechnung Pfeilspitze
[251]110CREATE OR REPLACE VIEW S_ZUORDUNGSPFEILSPITZE_FLURSTU
111AS
[274]112 SELECT l.OGR_FID--,
113        --(((st_azimuth(st_pointn(l.ORA_GEOMETRY, 1),
114        --st_pointn(l.ORA_GEOMETRY, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS WINKEL,
115        --st_startpoint(l.ORA_GEOMETRY) AS wkb_geometry
[251]116   FROM ap_lpo l
117   JOIN alkis_beziehungen v
[274]118     ON l.GML_ID = v.beziehung_von
[251]119   JOIN ax_flurstueck f
[274]120     ON v.beziehung_zu = f.GML_ID
[251]121  WHERE l.art = 'Pfeil'
122    AND v.beziehungsart = 'dientZurDarstellungVon'
[274]123    -- AND ('DKKM1000' ~~ ANY (l.advstandardmodell))
124    AND instr(l.advstandardmodell,'DKKM1000') > 0
[251]125    AND f.endet IS NULL
126    AND l.endet IS NULL;
127COMMENT ON VIEW S_ZUORDUNGSPFEILSPITZE_FLURSTU IS 'fuer Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer, Spitze';
[274]128
[251]129CREATE OR REPLACE VIEW S_BESCHRIFTUNG
130AS
[252]131  SELECT p.OGR_FID,
[251]132         p.schriftinhalt,
133         p.art,
[252]134         p.DREHWINKEL * 57.296 AS WINKEL,
135         p.ORA_GEOMETRY
[251]136    FROM ap_pto p
137   WHERE not p.schriftinhalt IS NULL
138     AND p.endet IS NULL
139     AND p.art NOT IN ('HNR', 'PNR');
140COMMENT ON VIEW S_BESCHRIFTUNG IS 'ap_pto, die noch nicht in anderen Layern angezeigt werden';
[274]141
[251]142CREATE OR REPLACE VIEW S_ZUORDUNGSPFEIL_GEBAEUDE
143AS
[252]144 SELECT l.OGR_FID,
145        l.ORA_GEOMETRY
[251]146   FROM ap_lpo l
147   JOIN alkis_beziehungen v
[274]148     ON l.GML_ID = v.beziehung_von
[251]149   JOIN ax_gebaeude g
[274]150     ON v.beziehung_zu = g.GML_ID
[251]151  WHERE l.art = 'Pfeil'
152    AND v.beziehungsart = 'dientZurDarstellungVon'
153    AND g.endet IS NULL
154    AND l.endet IS NULL;
155COMMENT ON VIEW S_ZUORDUNGSPFEIL_GEBAEUDE IS 'fuer Kartendarstellung: Zuordnungspfeil fÌr GebÀude-Nummer';
[274]156
[251]157CREATE OR REPLACE VIEW SK2004_ZUORDNUNGSPFEIL
158AS
[252]159 SELECT ap.OGR_FID, ap.ORA_GEOMETRY
[251]160 FROM ap_lpo ap
161 WHERE ((ap.signaturnummer = '2004')
[274]162   -- AND ('DKKM1000' ~~ ANY ((ap.advstandardmodell)[])));
163   AND (instr(ap.advstandardmodell,'DKKM1000') > 0));
[251]164COMMENT ON VIEW SK2004_ZUORDNUNGSPFEIL IS 'fuer Kartendarstellung: Zuordnungspfeil FlurstÃŒcksnummer"';
[274]165
166
167-- ToDo Berechnung SK2004_ZUORDNUNGSPFEIL_SPITZE
[251]168CREATE OR REPLACE VIEW SK2004_ZUORDNUNGSPFEIL_SPITZE
169AS
[274]170 SELECT ap.OGR_FID--, (((st_azimuth(st_pointn(ap.ORA_GEOMETRY, 1),
171        --st_pointn(ap.ORA_GEOMETRY, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS WINKEL,
172        --st_startpoint(ap.ORA_GEOMETRY) AS wkb_geometry
[251]173 FROM ap_lpo ap
174 WHERE ((ap.signaturnummer = '2004')
[274]175   --AND ('DKKM1000' ~~ ANY ((ap.advstandardmodell)[])));
176   AND (instr(ap.advstandardmodell,'DKKM1000') > 0));
177
178
[251]179CREATE OR REPLACE VIEW SK2012_FLURGRENZE
180AS
[252]181 SELECT fg.OGR_FID, fg.ORA_GEOMETRY
[251]182   FROM ax_besondereflurstuecksgrenze fg
[274]183  WHERE (
184    --3000 = ANY (fg.artderflurstuecksgrenze))
185    (instr(fg.artderflurstuecksgrenze,'3000') > 0)
186    --AND fg.advstandardmodell ~~ 'DLKM';
187    AND (instr(fg.advstandardmodell,'DLKM') > 0));
[251]188COMMENT ON VIEW SK2012_FLURGRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze "Flurgrenze"';
[274]189
[251]190CREATE OR REPLACE VIEW SK2014_GEMARKUNGSGRENZE
191AS
[252]192 SELECT gemag.OGR_FID, gemag.ORA_GEOMETRY
[251]193   FROM ax_besondereflurstuecksgrenze gemag
[274]194  WHERE (
195    --7003 = ANY (gemag.artderflurstuecksgrenze))
196    (instr(gemag.artderflurstuecksgrenze,'7003') > 0)
197    --AND gemag.advstandardmodell ~~ 'DLKM';
198    AND (instr(gemag.advstandardmodell,'DLKM') > 0));
[251]199COMMENT ON VIEW SK2014_GEMARKUNGSGRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemarkungsgrenze"';
[274]200
[251]201CREATE OR REPLACE VIEW SK2018_BUNDESLANDGRENZE
202AS
[252]203 SELECT blg.OGR_FID, blg.ORA_GEOMETRY
[251]204   FROM ax_besondereflurstuecksgrenze blg
[274]205  WHERE (
206    --7102 = ANY (blg.artderflurstuecksgrenze))
207    (instr(blg.artderflurstuecksgrenze,'7102') > 0)
208    --AND blg.advstandardmodell ~~ 'DLKM';
209    AND (instr(blg.advstandardmodell,'DLKM') > 0));
[252]210COMMENT ON VIEW SK2018_BUNDESLANDGRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze "BundesLANDgrenze"';
[274]211
[251]212CREATE OR REPLACE VIEW SK2020_REGIERUNGSBEZIRKSGRENZE
213AS
[252]214 SELECT rbg.OGR_FID, rbg.ORA_GEOMETRY
[251]215   FROM ax_besondereflurstuecksgrenze rbg
[274]216  WHERE (--7103 = ANY (rbg.artderflurstuecksgrenze))
217    (instr(rbg.artderflurstuecksgrenze,'7103') > 0)
218    --AND rbg.advstandardmodell ~~ 'DLKM';
219    AND (instr(rbg.advstandardmodell,'DLKM') > 0));
[251]220COMMENT ON VIEW SK2020_REGIERUNGSBEZIRKSGRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze "Regierungsbezirksgrenze"';
[274]221
[251]222CREATE OR REPLACE VIEW SK2022_GEMEINDEGRENZE
223AS
[252]224 SELECT gemg.OGR_FID, gemg.ORA_GEOMETRY
[251]225   FROM ax_besondereflurstuecksgrenze gemg
[274]226  WHERE (
227    --7106 = ANY (gemg.artderflurstuecksgrenze))
228     (instr(gemg.artderflurstuecksgrenze,'7106') > 0)
229    --AND gemg.advstandardmodell ~~ 'DLKM';
230    AND (instr(gemg.advstandardmodell,'DLKM') > 0));
[251]231COMMENT ON VIEW SK2022_GEMEINDEGRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemeindegrenze"';
[274]232
[251]233CREATE OR REPLACE VIEW SK201X_POLITISCHE_GRENZE
234AS
[252]235 SELECT OGR_FID, artderflurstuecksgrenze as art, ORA_GEOMETRY
[251]236   FROM ax_besondereflurstuecksgrenze
[274]237  WHERE (
238     --7102 = ANY (artderflurstuecksgrenze)
239     --OR  7102 = ANY (artderflurstuecksgrenze)
240     --  7103 = ANY (artderflurstuecksgrenze)
241     -- OR  7104 = ANY (artderflurstuecksgrenze)
242     --OR  7106 = ANY (artderflurstuecksgrenze)
243     (instr(artderflurstuecksgrenze,'7102') > 0)
244     OR (instr(artderflurstuecksgrenze,'7102') > 0)
245     OR (instr(artderflurstuecksgrenze,'7103') > 0)
246     OR (instr(artderflurstuecksgrenze,'7104') > 0)
247     OR (instr(artderflurstuecksgrenze,'7106') > 0)
[251]248    )
[274]249    --AND advstandardmodell ~~ 'DLKM';
250   AND (instr(advstandardmodell,'DLKM') > 0);
251
[252]252COMMENT ON VIEW SK201X_POLITISCHE_GRENZE IS 'fuer Kartendarstellung: besondere FlurstÃŒcksgrenze Politische Grenzen (Bund, LAND, Kreis, Gemeinde)';
[274]253
254
[251]255CREATE OR REPLACE VIEW FLSTNR_OHNE_POSITION
256AS
[274]257 SELECT f.GML_ID,
[252]258        f.gemarkungsnummer || '-' || f.flurnummer || '-' || f.zaehler || COALESCE ('/' || f.nenner, '') AS SUCH
[251]259 FROM        ax_flurstueck     f
[274]260   LEFT JOIN alkis_beziehungen v  ON v.beziehung_zu = f.GML_ID
[251]261  WHERE v.beziehungsart is NULL
262    AND f.endet IS NULL
263  ;
264COMMENT ON VIEW FLSTNR_OHNE_POSITION IS 'FlurstÌcke ohne manuell gesetzte Position fÌr die PrÀsentation der FS-Nr';
[274]265
[251]266CREATE OR REPLACE VIEW S_ALLGEMEINE_TEXTE
267AS
[252]268 SELECT p.OGR_FID,
269        p.ART,
270        p.DREHWINKEL * 57.296 AS DREHWINKEL,
271        p.SCHRIFTINHALT
[251]272   FROM ap_pto p
273  WHERE NOT p.art = 'ZAE_NEN'
274    AND NOT p.art = 'HNR'
275    AND NOT p.art = 'FKT'
276    AND NOT p.art = 'Friedhof'
277    AND p.schriftinhalt IS NOT NULL
278    AND p.endet IS NULL;
[274]279
[251]280CREATE OR REPLACE VIEW AP_PTO_ARTEN
281AS
282  SELECT DISTINCT art
283    FROM ap_pto;
[274]284
285-- ToDo: pruefen
[251]286CREATE OR REPLACE VIEW TEXTE_MIT_UMBRUCH
287AS
[252]288 SELECT OGR_FID, schriftinhalt, art
[251]289   FROM ap_pto
290  WHERE not schriftinhalt is null
291    AND schriftinhalt like '%/n%';
[274]292
293-- ToDo:
[251]294CREATE OR REPLACE VIEW S_ALLGEMEINE_TEXTE_ARTEN
295AS
296 SELECT DISTINCT art
297   FROM s_allgemeine_texte;
298CREATE OR REPLACE VIEW FLURSTUECKS_MINMAX AS
[252]299 SELECT min(st_xmin(ORA_GEOMETRY)) AS r_min,
300        min(st_ymin(ORA_GEOMETRY)) AS h_min,
301        max(st_xmax(ORA_GEOMETRY)) AS r_max,
302        max(st_ymax(ORA_GEOMETRY)) AS h_max
[251]303   FROM ax_flurstueck f
304   WHERE f.endet IS NULL;
305COMMENT ON VIEW FLURSTUECKS_MINMAX IS 'Maximale Ausdehnung von ax_flurstueck fuer EXTENT-Angabe im Mapfile';
[274]306
307-- ToDo:
308-- Tabelle liegt nur einmal vor wegen Laenge des Namens
[251]309CREATE OR REPLACE VIEW BAURECHT
310AS
[252]311  SELECT r.OGR_FID,
312         r.ORA_GEOMETRY,
[274]313         r.GML_ID,
[251]314         r.artderfestlegung as adfkey,
[274]315         r.name,
[251]316         r.stelle,
317         r.bezeichnung AS rechtbez,
[274]318        a.bezeichner  AS adfbez,
[251]319         d.bezeichnung AS stellbez
320    FROM AX_BAURAUMODERBODENORDNUNGSREC r
[274]321    LEFT JOIN AX_BAURAUMODERBODENORDNUNGSKEY a
322     ON r.artderfestlegung = a.wert
[251]323    LEFT JOIN ax_dienststelle d
[252]324      ON r.LAND   = d.LAND
[274]325    AND r.stelle = d.stelle
[251]326  WHERE r.endet IS NULL
[274]327   AND d.endet IS NULL ;
328
[251]329CREATE OR REPLACE VIEW GEMARKUNG_IN_GEMEINDE
330AS
[252]331  SELECT DISTINCT LAND, regierungsbezirk, kreis, gemeinde, gemarkungsnummer
[251]332  FROM            ax_flurstueck
333  WHERE           endet IS NULL
[252]334  ORDER BY        LAND, regierungsbezirk, kreis, gemeinde, gemarkungsnummer
[251]335;
336COMMENT ON VIEW GEMARKUNG_IN_GEMEINDE IS 'Welche Gemarkung liegt in welcher Gemeinde? Durch Verweise aus FlurstÃŒck.';
[274]337
338--ToDo:
339--CREATE OR REPLACE VIEW ARTEN_VON_FLURSTUECKSGEOMETRIE
340--AS
341-- SELECT   count(GML_ID) as anzahl,
342 --         st_geometrytype(ORA_GEOMETRY)
343-- FROM     ax_flurstueck
344-- WHERE    endet IS NULL
345-- GROUP BY st_geometrytype(ORA_GEOMETRY);
346
[251]347CREATE OR REPLACE VIEW ADRESSEN_HAUSNUMMERN
348AS
349    SELECT
350        s.bezeichnung AS strassenname,
351         g.bezeichnung AS gemeindename,
[252]352         l.LAND,
[251]353         l.regierungsbezirk,
354         l.kreis,
355         l.gemeinde,
356         l.lage        AS strassenschluessel,
357         l.hausnummer
358    FROM   AX_LAGEBEZEICHNUNGMITHAUSNUMME l 
359    JOIN   ax_gemeinde g
360      ON l.kreis=g.kreis
361     AND l.gemeinde=g.gemeinde
362    JOIN   AX_LAGEBEZEICHNUNGKATALOGEINTR s
363      ON l.kreis=s.kreis
364     AND l.gemeinde=s.gemeinde
365     AND l.lage = s.lage
[274]366    --WHERE     l.gemeinde = 40;
367
[251]368CREATE OR REPLACE VIEW ADRESSEN_ZUM_FLURSTUECK
369AS
370    SELECT
371           f.gemarkungsnummer,
372           f.flurnummer,
373           f.zaehler,
374           f.nenner,
375           g.bezeichnung AS gemeindename,
376           s.bezeichnung AS strassenname,
377           l.lage        AS strassenschluessel,
378           l.hausnummer
379      FROM   ax_flurstueck f
380      JOIN   alkis_beziehungen v
[274]381        ON f.GML_ID=v.beziehung_von
[251]382      JOIN   AX_LAGEBEZEICHNUNGMITHAUSNUMME l 
[274]383        ON l.GML_ID=v.beziehung_zu
[251]384      JOIN   ax_gemeinde g
385        ON l.kreis=g.kreis
386       AND l.gemeinde=g.gemeinde
387      JOIN   AX_LAGEBEZEICHNUNGKATALOGEINTR s
388        ON l.kreis=s.kreis
389       AND l.gemeinde=s.gemeinde
390       AND l.lage = s.lage
391     WHERE v.beziehungsart='weistAuf'
[274]392       --AND l.gemeinde = 40
[251]393     ORDER BY
394           f.gemarkungsnummer,
395           f.flurnummer,
396           f.zaehler,
397           f.nenner;
[274]398
[251]399CREATE OR REPLACE VIEW FLURSTUECKE_EINES_EIGENTUEMERS
400AS
401   SELECT
402      k.bezeichnung                AS gemarkung,
403      k.gemarkungsnummer           AS gemkg_nr,
404      f.flurnummer                 AS flur,
405      f.zaehler                    AS fs_zaehler,
406      f.nenner                     AS fs_nenner,
407      f.amtlicheflaeche            AS flaeche,
[252]408      f.ORA_GEOMETRY               AS geom,
[251]409      b.bezeichnung                AS bezirkname,
410      g.BUCHUNGSBLATTNUMMERMITBUCHSTAB AS gb_blatt,
411      g.blattart,
412      s.laufendenummer             AS bvnr,
413      art.bezeichner               AS buchgsart,
414      n.laufendenummernachdin1421  AS name_num,
415      p.nachnameoderfirma          AS nachname
416   FROM       ax_person              p
[274]417        JOIN  alkis_beziehungen      bpn  ON bpn.beziehung_zu  = p.GML_ID
418        JOIN  ax_namensnummer        n    ON bpn.beziehung_von =n.GML_ID
419        JOIN  alkis_beziehungen      bng  ON n.GML_ID = bng.beziehung_von
420        JOIN  ax_buchungsblatt       g    ON bng.beziehung_zu = g.GML_ID
[252]421        JOIN  ax_buchungsblattbezirk b    ON g.LAND = b.LAND AND g.bezirk = b.bezirk
[274]422        JOIN  alkis_beziehungen      bgs  ON bgs.beziehung_zu = g.GML_ID
423        JOIN  ax_buchungsstelle      s    ON s.GML_ID = bgs.beziehung_von
[251]424        JOIN  ax_buchungsstelle_buchungsart art ON s.buchungsart = art.wert
[274]425        JOIN  alkis_beziehungen      bsf  ON bsf.beziehung_zu = s.GML_ID
426        JOIN  ax_flurstueck          f    ON f.GML_ID = bsf.beziehung_von
[252]427        JOIN  ax_gemarkung           k    ON f.LAND = k.LAND AND f.gemarkungsnummer = k.gemarkungsnummer
[251]428   WHERE p.nachnameoderfirma LIKE 'Gemeinde %'
429     AND bpn.beziehungsart = 'benennt'
430     AND bng.beziehungsart = 'istBestandteilVon'
431     AND bgs.beziehungsart = 'istBestandteilVon'
432     AND bsf.beziehungsart = 'istGebucht'
433     AND p.endet IS NULL
434     AND n.endet IS NULL
435     AND g.endet IS NULL
436     AND b.endet IS NULL
437     AND s.endet IS NULL
438     AND f.endet IS NULL
439     AND k.endet IS NULL
440   ORDER BY   
441         k.bezeichnung,
442         f.flurnummer,
443         f.zaehler,
444         f.nenner,
445         g.bezirk,
446         g.BUCHUNGSBLATTNUMMERMITBUCHSTAB,
447         s.laufendenummer
448;
449CREATE OR REPLACE VIEW RECHTE_EINES_EIGENTUEMERS
450AS
451   SELECT
452      k.bezeichnung                AS gemarkung,
453      k.gemarkungsnummer           AS gemkg_nr,
454      f.flurnummer                 AS flur,
455      f.zaehler                    AS fs_zaehler,
456      f.nenner                     AS fs_nenner,
457      f.amtlicheflaeche            AS flaeche,
[252]458      f.ORA_GEOMETRY               AS geom,
[251]459      b.bezeichnung                AS bezirkname,
460      g.BUCHUNGSBLATTNUMMERMITBUCHSTAB AS gb_blatt,
461      sh.laufendenummer            AS bvnr_herr,
462      sh.zaehler || '/' || sh.nenner AS buchg_anteil_herr,
463      arth.bezeichner              AS buchgsa_herr,
464      bss.beziehungsart            AS bez_art,
465      artd.bezeichner              AS buchgsa_dien,
466      sd.laufendenummer            AS bvnr_dien,
467      n.laufendenummernachdin1421  AS name_num,
468      p.nachnameoderfirma          AS nachname
469   FROM       ax_person              p
[274]470        JOIN  alkis_beziehungen      bpn  ON bpn.beziehung_zu  = p.GML_ID
471        JOIN  ax_namensnummer        n    ON bpn.beziehung_von =n.GML_ID
472        JOIN  alkis_beziehungen      bng  ON n.GML_ID = bng.beziehung_von
473        JOIN  ax_buchungsblatt       g    ON bng.beziehung_zu = g.GML_ID
[252]474        JOIN  ax_buchungsblattbezirk b    ON g.LAND = b.LAND AND g.bezirk = b.bezirk
[274]475        JOIN  alkis_beziehungen      bgs  ON bgs.beziehung_zu = g.GML_ID
476        JOIN  ax_buchungsstelle      sh   ON sh.GML_ID = bgs.beziehung_von
[251]477        JOIN  ax_buchungsstelle_buchungsart arth ON sh.buchungsart = arth.wert
[274]478        JOIN  alkis_beziehungen      bss  ON sh.GML_ID = bss.beziehung_von
479        JOIN  ax_buchungsstelle      sd   ON sd.GML_ID = bss.beziehung_zu
[251]480        JOIN  ax_buchungsstelle_buchungsart artd ON sd.buchungsart = artd.wert
[274]481        JOIN  alkis_beziehungen      bsf  ON bsf.beziehung_zu = sd.GML_ID
482        JOIN  ax_flurstueck          f    ON f.GML_ID = bsf.beziehung_von
[252]483        JOIN  ax_gemarkung           k    ON f.LAND = k.LAND AND f.gemarkungsnummer = k.gemarkungsnummer
[251]484   WHERE p.nachnameoderfirma LIKE 'Stadt %'
485     AND bpn.beziehungsart = 'benennt'
486     AND bng.beziehungsart = 'istBestandteilVon'
487     AND bgs.beziehungsart = 'istBestandteilVon'
488     AND bss.beziehungsart in ('an','zu')
489     AND bsf.beziehungsart = 'istGebucht'
490     AND p.endet IS NULL
491     AND n.endet IS NULL
492     AND g.endet IS NULL
493     AND b.endet IS NULL
494     AND sh.endet IS NULL
495     AND sd.endet IS NULL
496     AND f.endet IS NULL
497     AND k.endet IS NULL
498   ORDER BY   
499         k.bezeichnung,
500         f.flurnummer,
501         f.zaehler,
502         f.nenner,
503         g.bezirk,
504         g.BUCHUNGSBLATTNUMMERMITBUCHSTAB,
505         sh.laufendenummer
506;
[274]507
[251]508CREATE OR REPLACE VIEW BEZIEHUNGEN_REDUNDANT
509AS
510SELECT *
511 FROM alkis_beziehungen AS bezalt
512 WHERE EXISTS
[252]513       (SELECT OGR_FID
[251]514         FROM alkis_beziehungen AS bezneu
515        WHERE bezalt.beziehung_von = bezneu.beziehung_von
516          AND bezalt.beziehung_zu  = bezneu.beziehung_zu
517          AND bezalt.beziehungsart = bezneu.beziehungsart
[252]518          AND bezalt.OGR_FID       < bezneu.ogc_fid
[251]519        );
[274]520
[251]521COMMENT ON VIEW BEZIEHUNGEN_REDUNDANT IS 'alkis_beziehungen zu denen es eine identische neue Version gibt.';
[274]522
523--ToDo
524--CREATE OR REPLACE VIEW BEZIEHUNGEN_REDUNDANT_IN_DELET
525--AS
526--SELECT *
527-- FROM alkis_beziehungen AS bezalt
528-- WHERE EXISTS
529--       (SELECT OGR_FID
530--         FROM alkis_beziehungen AS bezneu
531--        WHERE bezalt.beziehung_von = bezneu.beziehung_von
532--          AND bezalt.beziehung_zu  = bezneu.beziehung_zu
533--         AND bezalt.beziehungsart = bezneu.beziehungsart
534--          AND bezalt.OGR_FID       < bezneu.ogc_fid
535--        )
536--     AND EXISTS
537--        (SELECT OGR_FID
538--         FROM delete
539--         WHERE bezalt.beziehung_von = substr(featureid, 1, 16)
540--            OR bezalt.beziehung_zu  = substr(featureid, 1, 16)
541--        );
542
543--COMMENT ON VIEW BEZIEHUNGEN_REDUNDANT_IN_DELET IS 'alkis_beziehungen zu denen es eine identische neue Version gibt und wo das Objekt noch in der delete-Tabelle vorkommt.';
[251]544purge recyclebin;
545QUIT;
Note: See TracBrowser for help on using the repository browser.