Page 1 sur 1

SQL recherche de mots

Posté : 19 mai 2010, 00:33
par devlop78
Bonjour,

J'ai déjà fait un script qui s'occupe de la choses suivantes mais je voudrais savoir si SQL sait le faire.

Je souhaiterais, pour de l'autocomplétition, que SQL recherche tous les mots de toutes les lignes d'une table qui contiennent $x. donc si je cherche "dev", qu'il me rapporte "developpement", "developper", etc ... et me les classe par nombre de répétition totale sur toute la table. Ainsi, si le mot "developpement" se trouve 3 fois dans 3 articles, il faut qu'il soit avant "developper" qui se trouveraient 3 fois dans 2 articles ou 2 fois dans 3 articles ... Biensûr, tout ça en sachant qu'un mot est délimité par des espaces, mais aussi par des points, des virgules, etc et qu'il fasse au minimum 3 caractères (mais ça je peux le nettoyer avec php au pire). Le must, c'est de pouvoir lui dire de ramener aussi le mot d'avant et le mot d'après (mais pas dans le même résultat, pour avoir 1 résultat le mot seul, 1 résultat le mot avant et le mot en question et 1 résultat le mot en question et le mot d'après).

Sinon, connaissez-vous de bonnes techniques ? Actuellement, j'utilise un script pour générer une table de recherche (colonnes 'mots' et colonnes 'récurrence') que je remplis en stockant toutes les valeurs du champs "contenu" de ma table "page", où je nettoie les points, les petits mots, et malheureusement il me reste des mots comme "après", "pendant", etc qui ne sont d'aucune utilité.

Merci pour vos futurs conseils ;)