source: trunk/data/konvert/postnas_0.6/gemeinden_laden.sql @ 110

Revision 105, 1.8 KB checked in by frank.jaeger, 11 years ago (diff)

Anpassung an PostNAS-Version 0.6:
Buchauskunft und Navigation: Formate des Feldes "lage" (Straßenschlüssel) werden gesteuert über einen neuen conf-Parameter $dbvers (05 oder 06).
Konverter-Scripte für PostNAS 0.6 in einem neuen Ordner.

RevLine 
[105]1
2-- ALKIS PostNAS 0.6
3
4-- =======================================================
5-- Tabelle fuer die Zuordnung vom Gemarkungen zu Gemeinden
6-- =======================================================
7
8-- Für die Regelung der Zugriffsberechtigung einer Gemeindeverwaltung auf die
9-- Flurstücke in ihrem Gebiet braucht man die Information, in welcher Gemeinde eine Gemarkung liegt.
10-- 'ax_gemeinde' und 'ax_gemarkung' haben aber im ALKIS keinerlei Beziehung zueinander - kaum zu glauben!
11-- Nur über die Auswertung der Flurstücke kann man die Zuordnung ermitteln.
12-- Da nicht ständig mit 'SELECT DISTINCT' sämtliche Flurstücke durchsucht werden können,
13-- muss diese Information als (redundante) Tabelle nach dem Laden zwischengespeichert werden.
14
15
16-- Teil 2: Laden der Tabelle
17
18-- Stand
19
20--  2011-07-25 PostNAS 06, Umbenennung
21
22SET client_encoding = 'UTF-8';
23
24-- Alles auf Anfang!
25
26 DELETE FROM gemeinde_gemarkung;
27
28
29-- Vorkommende Paarungen in Flurstücke
30INSERT INTO gemeinde_gemarkung
31  (               land, regierungsbezirk, kreis, gemeinde, gemarkung       )
32  SELECT DISTINCT land, regierungsbezirk, kreis, gemeinde, gemarkungsnummer
33  FROM            ax_flurstueck
34  ORDER BY        land, regierungsbezirk, kreis, gemeinde, gemarkungsnummer
35;
36
37
38-- Namen der Gemeinde dazu als Optimierung bei der Auskunft
39UPDATE gemeinde_gemarkung a
40   SET gemeindename =
41   ( SELECT b.bezeichnung
42     FROM    ax_gemeinde b
43     WHERE a.land=b.land
44       AND a.regierungsbezirk=b.regierungsbezirk
45       AND a.kreis=b.kreis
46       AND a.gemeinde=b.gemeinde
47   );
48 
49 
50-- Namen der Gemarkung dazu als Optimierung bei der Auskunft
51UPDATE gemeinde_gemarkung a
52   SET gemarkungsname =
53   ( SELECT b.bezeichnung
54     FROM    ax_gemarkung b
55     WHERE a.land=b.land
56       AND a.gemarkung=b.gemarkungsnummer
57   );
58
59
60-- ENDE --
Note: See TracBrowser for help on using the repository browser.