Ich habe mich heute mal mit der Funktion SOUNDEX auseinander gesetzt.
SOUNDEX(
Gibt einen Soundex-String ausstr
)str
zurück. Zwei Strings, die fast identisch klingen, sollten identische Soundex-Strings haben. Ein Soundex-String ist standardmäßig vier Zeichen lang, die FunktionSOUNDEX()
gibt aber einen beliebig langen String zurück. Sie könnenSUBSTRING()
für das Ergebnis verwenden, um einen Standard-Soundex-String zu erhalten. Alle nicht alphabetischen Zeichen instr
werden ignoriert. Alle internationalen alphabetischen Zeichen außerhalb des Bereichs A bis Z werden als Vokale behandelt.
mysql>SELECT SOUNDEX('Hello');
-> ‚H400‘
mysql>SELECT SOUNDEX('Quadratically');
-> ‚Q36324‘
Hinweis: Diese Funktion implementiert den Soundex-Originalalgorithmus und nicht die gängigere erweiterte Version, wie sie auch von D. Knuth beschrieben wird. Der Unterschied besteht darin, dass die Originalversion zuerst Vokale und dann Duplikate verwirft, während die erweiterte Version umgekehrt vorgeht.
Beschreibung
string soundex ( string $str )
Errechnet den Wert der Laut-Ähnlichkeit von str.
Soundex-Werte haben die Eigenschaft, dass ähnlich ausgesprochene Wörter den gleichen Soundex-Wert erzeugen. Dies kann zur Suche in Datenbanken verwendet werden, wenn Sie zwar die Aussprache aber nicht die genaue Schreibweise kennen. Die Funktion soundex gibt einen String aus 4 Zeichen, beginnend mit einem Buchstaben, zurück.
Diese besondere soundex-Funktion ist u.a. von Donald Knuth in „The Art Of Computer Programming, vol. 3: Sorting And Searching“, Addison-Wesley-Verlag (1973), Seiten 391 bis 392 beschrieben.
Manuel