source: trunk/import/patch_2014-09-12.sql @ 336

Revision 332, 2.9 KB checked in by frank.jaeger, 10 years ago (diff)

Zwischen-Stand vor Wochenende

Line 
1--
2-- PostNAS 0.8
3-- Anwendung der der Schema-Änderungen vom 12.09.2014 auf bestehende Datenbanken
4--
5-- 2014-09-12 FJ Indizierung der ersten 16 Zeichen der gml_id, wenn diese Ziel einer ALKIS-Beziehung ist.
6--
7-- -> aa_objekt
8-- Welche konkreten Tabellen kann das betreffen?
9
10-- -> ap_lpo
11CREATE INDEX ap_lpo_gml16 ON ap_lpo USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
12
13-- -> ax_buchungsblatt
14CREATE INDEX ax_buchungsblatt_gml16 ON ax_buchungsblatt USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
15
16-- -> ax_buchungsstelle
17-- FÃŒr Relationen (ALKIS-Beziehungen) aus anderen Tabellen ÃŒber die gml_id ohne Zeitstempel
18CREATE INDEX ax_buchungsstelle_gml16 ON ax_buchungsstelle USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
19
20-- -> ax_flurstueck
21CREATE INDEX ax_flurstueck_gml16 ON ax_flurstueck USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
22
23-- -> ax_gebaeude
24CREATE INDEX ax_gebaeude_gml16 ON ax_gebaeude USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
25
26-- -> ax_lagebezeichnungohnehausnummer
27CREATE INDEX ax_lagebezeichnungohnehausnummer_gml16 ON ax_lagebezeichnungohnehausnummer USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
28
29-- -> ax_lagebezeichnungmithausnummer
30CREATE INDEX ax_lagebezeichnungmithausnummer_gml16 ON ax_lagebezeichnungmithausnummer USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
31
32-- -> ax_lagebezeichnungmitpseudonummer
33CREATE INDEX ax_lagebezeichnungmitpseudonummer_gml16 ON ax_lagebezeichnungmitpseudonummer USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
34
35-- -> ax_verwaltung
36CREATE INDEX ax_verwaltung_gml16 ON ax_verwaltung USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
37
38-- -> ax_grenzpunkt
39CREATE INDEX ax_grenzpunkt_gml16 ON ax_grenzpunkt USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
40
41-- -> ax_namensnummer
42CREATE INDEX ax_namensnummer_gml16 ON ax_namensnummer USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
43
44-- -> ax_anschrift
45CREATE INDEX ax_anschrift_gml16 ON ax_anschrift USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
46
47-- -> ax_person
48CREATE INDEX ax_person_gml16 ON ax_person USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
49
50-- -> ax_personengruppe  -- Tabelle im Schema noch nicht vorhanden
51--CREATE INDEX ax_personengruppe_gml16 ON ax_personengruppe USING btree (substring(gml_id,1,16)); -- ALKIS-Relation
52
53-- Test: -- -> ax_buchungsblatt
54/*
55
56-- Falsch und schnell, Findet nicht die FÀlle mit langer ID:
57 SELECT dien.gml_id, herr.gml_id
58   FROM ax_buchungsstelle dien
59   JOIN ax_buchungsstelle herr 
60     ON dien.gml_id = ANY (herr.an)
61  WHERE dien.endet IS NULL AND herr.endet IS NULL
62  LIMIT 300;
63-- 78 ms
64
65-- findet alle FÀlle, ist aber unbrauchbar langsam:
66 SELECT dien.gml_id, herr.gml_id
67   FROM ax_buchungsstelle dien
68   JOIN ax_buchungsstelle herr  ON substring(dien.gml_id,1,16) = ANY (herr.an)
69  WHERE dien.endet IS NULL AND herr.endet IS NULL
70  LIMIT 300;
71-- 19454 ms  (vor dem Patch)
72
73*/
Note: See TracBrowser for help on using the repository browser.