[opengeodb] Alle Städte und/oder Landkreise in einem Bundesland?

Stephan Schuster stephan.s at gmx.net
Don Mar 20 20:52:47 CET 2008


Hallo Jan,

> Und zwar möchte ich gerne (ohne die geoclassphp, sofern die das denn 
> überhaupt kann) eine Liste von allen Städten in einem Bundesland oder 
> allen Landkreisen in einem Bundesland haben. Geht das irgendwie oder 
> fehlt da die Zuordnung?

machbar ist das Ganze sicher, der Schlüssel dazu sind die Datensätze vom
Typ 400100000 (= Teil von) in der Tabelle geodb_textdata. Diese ordnen
der jeweiligen loc_id die übergeordnet Location zu. Hier müsstest Du
dann die jeweiligen Ebenen durchlaufen.

Alle Ortschaften zum Landkreis Pinneberg (loc_id 485) erhälst Du
beispielsweise mit folgender Abfrage:

    SELECT gtv.loc_id, name.text_val AS name, typ.text_val AS typ
    FROM geodb_textdata gtv
    LEFT JOIN geodb_textdata name ON gtv.loc_id = name.loc_id
    LEFT JOIN geodb_textdata typ ON gtv.loc_id = typ.loc_id
    WHERE name.text_type = 500100000 /* Name */
    AND typ.text_type = 400300000 /* Typ */
    AND gtv.text_type = 400100000 /* Teil von */
    AND gtv.text_val = '485' /* loc_id des Landkreis Pinneberg */;

Analog dazu müsstest Du deine Abfragen gestalten. Möglicherweise kannst
du auch http://fa-technik.adfc.de/code/opengeodb/dump/Dhier.sql
für die gewünschte Hierarchie-Struktur verwenden, aber ich glaube es hat sich
noch niemand die Mühe gemacht diese zu prüfen.

BTW: Ich glaube nicht, dass die geoclass.php noch mit dem aktuellen
Schema zusammenarbeitet...

Gruß
Stephan