Übereinstimmungen trotz Unterschieden finden

Sprint

Erfahrenes Mitglied
Hallo zusammen,

ich stehe hier vor dem Problem, Übereinstimmungen zwischen Werten in verschiedenen Datensätzen zu finden. Bei aktuell 25000 Datensätzen ist eine Live Suche vermutlich zu aufwendig und zeitintensiv. Außerdem verfügt MySQL ja meines Wissens nicht über entsprechende Werkzeuge. Darum hatte ich mir überlegt, für die wichtigsten Felder wie Name, Straße, Ort einen "Wert" zu errechnen und nur noch darüber zu vergleichen. Ich hatte früher bei Clipper mal mit Soundex zu tun, aber das ist aufgrund der Nähe zur englischen Sprache vermutlich ungeeignet.

Es sollten auch leichte Abweichungen gefunden werden, da aufgrund von zwingenden Übereinstimmungen mit dem BZSt die jeweilige Schreibweise eingehalten werden muß. Es sollten also z.B. folgende Varianten gefunden werden:

C Iglo Langnesias
Cl Iglo Langnesias
Calle Iglo Langnesias
Calle Iglo-Langnesias

Kennt jemand eine entsprechende Funktion oder Routine, die sowas kann? Oder wie sonst könnte man sowas realisieren?
 

Sprint

Erfahrenes Mitglied
Funktioniert leider gar nicht. Ich habe mal "Calle Iglo Langnesias" und "C Iglo Langnesias" ausprobiert. Die Ergebnisse sind C4245252 bzw. C45252. Es sollte aber als übereinstimmend rauskommen.
 

Yaslaw

n/a
Moderator
Was ist das für eine Sprache?
Egal, dass ist das was MySQL anbeitet. Ich selber habe einerlei Erfahrung mit sowas.

Mit was für einer Programiersprache arbeitest du? PHP? Ev. kann man die Daten laden und in der Programiersprache besser vergleichen.
 

Sprint

Erfahrenes Mitglied
Ja, das läuft mit PHP.
Daß MySQL da nicht viel kann war mir schon fast klar. Darum hatte ich die Anfrage ja auch unter PHP eingestellt. ;)

Ich habe mich inzwischen etwas mit levenshtein(), metaphone() und similar_text() beschäftigt. Da läßt sich vielleicht was zusammenbauten. Hätte je aber auch sein können, daß jemand schon mal das Problem hatte und eine Lösung kennt.