Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Sortieren nach Soundex (oder ähnlich) `Closeness`

Soundex ist für solche Dinge nicht gut, da verschiedene Wörter dieselben Soundex-Ergebnisse liefern können und daher willkürlich sortiert werden. Eine bessere Lösung dafür ist der Levenshein Edit Distance-Algorithmus, den Sie möglicherweise als Funktion in Ihrer Datenbank implementieren können:Link zu Levensheint impl. als in MySql gespeicherte Funktion !!!

Sie können sich auch diesen SO-Link ansehen . Es enthält eine Sql-Server-Implementierung (T-SQL-spezifisch) des Algorithmus, aber es sollte möglich sein, ihn zu portieren. Die Mechanik des Algorithmus ist ziemlich einfach und benötigt nur ein 2D-Array und Schleifen über eine Zeichenfolge.