Hallo,
dann trifft doch die vierstellige plz 1234 auf mehr als einen datensatz in der geo tabelle oder sehe ich jetzt was verkehrt ? gib mal beispiel, damit ich mir ein bild davon machen kann.
Aaaah, das "Missverständnis" liegt bei meiner Wortwahl bzgl. der übergeordneten PLZ. In der geodata finden sich plz wie:
- alle regulär vergebenen 5stelligen PLZ
- 4stellige "Durchschnitts-PLZ", sofern es damit beginnende 1) gibt
- 3stellige ..., sofern es ... 2) gibt
- 2stellige ..., sofern es ... 3) gibt
- 1stellige ..., sofern es ... 4) gibt
Aus 1) bis 4) folgt, dass die Werte '0', '1', ..., '9' in der Tabelle als Werte für plz enthalten sind.
Beispiele dafür:
zu 1) 01067, 10115, 10117, 10119 existieren in geodata.plz
zu 1) 01030, 01031, ..., 01039 existieren nicht in geodata.plz
zu 2) 0106, 1011 existieren / 0103 existiert nicht
zu 3) 010, 101 existieren (hier fünde 01038 sein Pendant 010)
zu 4) 01, 10
zu 5) 0, 1
- unique index auf geodata.plz [char(5)]
und das sagt mir, dass es nur 5 stellige plz in der geo tabelle gibt.
Wäre hier varchar(5) angebrachter?
Als Integer speichern kommt nicht in Frage, da es zu Fehlern käme: PLZ '01067' würde genauso gespeichert wie '1067' (=1067*)
Viele Grüße,
Sebastian