Seite 1 von 1

Mitgliedersortierung nach Straße

Verfasst: Samstag 19. März 2016, 19:19
von tectumopticum
Klingt vielleicht erstmal ein wenig exotisch, brauchen wir im Verein jedoch für die korrekte Erstellung von Verteilerlisten und könnte vielleicht für andere auch interessant sein:

Wenn man in der Mitgliederübersicht auf die Spaltenüberschrift "Straße" klickt, werden die Einträge alphanumerisch sortiert. Da die Hausnummer keine eigene DB-Spalte ist, sieht die Ausgabe z.B. so aus:
A-Straße 1
A-Straße 10
A-Straße 11
A-Straße 2
A-Straße 23
B-Straße 1
B-Straße 10
B-Straße 7-9
B-Straße 35c
usw.

Haben möchte man natürlich (jedenfalls ich) etwas wie
A-Straße 1
A-Straße 2
A-Straße 10
A-Straße 11
A-Straße 23
B-Straße 1
B-Straße 7-9
B-Straße 10
B-Straße 35c

Da ich ohnehin einen speziellen eigenen Report benötige, hole ich mir das per sql direkt aus der DB. Das "order by"-statement sieht dann so aus (bei Bedarf erkläre ich das gerne):
order by LEFT(strasse, LOCATE(' ', strasse, -1)), CAST(REGEXP_REPLACE(SUBSTRING(strasse, LOCATE(' ', strasse, -1)+1), '[a-z,-]','') as int)

Ob das jetzt allgemeingültig ist oder die beste aller Lösungen sei dahin gestellt, Verbesserungsvorschläge nehme ich gerne entgegen.

Könnte man diese Lösung nicht in die Sortierung auf der GUI übernehmen? Oder kommt die Sortierung aus Jameica?

Henning

Re: Mitgliedersortierung nach Straße

Verfasst: Sonntag 20. März 2016, 09:50
von heiner
Hallo Henning,

die Sortierung funktioniert evtl. korrekt für dich. Es gibt aber auch Vereine, die Mitglieder aus mehreren Orten haben. Dann muss auch noch der Ort einbezogen werden. Noch komplizierter wird es bei ausländischen Adressen mit führender Hausnummer.

Da es sich anscheinend um ein Spezialproblem deines Vereins handelt, werde ich das Thema nicht angehen.

Heiner

Re: Mitgliedersortierung nach Straße

Verfasst: Sonntag 20. März 2016, 17:56
von kugelblitz
Hallo Henning,

Dein Sortierproblem kannst Du einfach erledigen indem Du den Hausnummer eine oder zwei Lehrstelle voranstellen, siehe Beispiel:
Hauptstraße __1
Hauptstraße __2
Hauptstraße _10
Hauptstraße _15
Hauptstraße _20
Hauptstraße 100 usw.
Die Unterstriche sind nur zur Verdeutlichung!
Hoffe das Dein Problem damit gelöst ist.

Gruß Manfred