Mysql
 sql >> Database >  >> RDS >> Mysql

Ordina per Soundex (o simile) `Vicinanza`

Soundex non va bene per questo genere di cose perché parole diverse possono darti gli stessi risultati Soundex e quindi verranno ordinati in modo arbitrario. Una soluzione migliore per questo è l'algoritmo Levenshein Edit Distance e potresti essere in grado di implementarlo come funzione nel tuo database:Link a Levensheint impl. come funzione memorizzata in MySql !!!

Puoi anche controllare questo collegamento SO . Contiene un'implementazione dell'algoritmo del server SQL (specifico per T-SQL), ma dovrebbe essere possibile eseguire il porting. La meccanica dell'algoritmo è abbastanza semplice e richiede solo un array 2D e il looping su una stringa.