recherche phonétique

Répondre au sujet

Il y a 12 commentaires

loic_425
By loic_425 | 29 oct. 2008 à 16:32

Non, tu me fais un seul appel à la fonction soudex par page maxi...

- Blue

WHERE g.soundex = SOUNDEX('".$recherche."')

ça n'en fait pas qu'un seul ça ?!

c'est le jeu auquel le soundex est comparé qui change ainsi je ne vois pas pourquoi mysql ferait plusieurs fois le soundex de recherche dans la requête.

loic_425
By Blue | 29 oct. 2008 à 17:44

WHERE g.soundex = SOUNDEX('".$recherche."')

ça n'en fait pas qu'un seul ça ?!

c'est le jeu auquel le soundex est comparé qui change ainsi je ne vois pas pourquoi mysql ferait plusieurs fois le soundex de recherche dans la requête.

- loic_425

oui, tu as raison "normalement.".. Mais avec des bases de données, on sait jamais, il suffit d'un index mal placé pour qu'il analyse le soundex pour chaque ligne de la table g.

Ceci est valable pour Oracle, sur innoDb (notre mysql), je ne sais pas si l'optimiseur ne va pas analyser le soundex pour chaque ligne.

Pour le soundex de php, il existe des améliorations.

Ca me plait moyen cette réduction d'une phrase complete en une seule valeur (une valeur pas mot ou par syllabes, ça faciliterai les recherches).

A voir aussi, la disstance de levinstein pour la recherche !

Je l'utilise en sus du soundex dans l'insertion, pour vérifier que les 2 noms ne sont pas trop différents.