1 |
|
---|
2 | -- ALKIS PostNAS 0.5
|
---|
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 | -- 2010-11-25
|
---|
20 |
|
---|
21 |
|
---|
22 | SET client_encoding = 'UTF-8';
|
---|
23 |
|
---|
24 | -- Alles auf Anfang!
|
---|
25 |
|
---|
26 | DELETE FROM gemeinde_gemarkung;
|
---|
27 |
|
---|
28 |
|
---|
29 | -- Vorkommende Paarungen in Flurstücke
|
---|
30 | INSERT 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
|
---|
39 | UPDATE gemeinde_gemarkung a
|
---|
40 | SET gemeindename =
|
---|
41 | ( SELECT DISTINCT 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
|
---|
51 | UPDATE gemeinde_gemarkung a
|
---|
52 | SET gemarkungsname =
|
---|
53 | ( SELECT DISTINCT b.bezeichnung
|
---|
54 | FROM ax_gemarkung b
|
---|
55 | WHERE a.land=b.land
|
---|
56 | AND a.gemarkung=b.gemarkungsnummer
|
---|
57 | );
|
---|
58 |
|
---|
59 |
|
---|
60 | -- ENDE -- |
---|