Merci d'avoir lu ceci. J'espère que tu peux m'aider.
Quand j'ai une table Mysql avec ces valeurs pour la ligne
correspondance inverse de plusieurs mots
id | recherche
========
1 | papillons
2 | Amérique
3 | oiseaux d'Amérique
4 | Comment puis-je dire quelles lignes ont tous les mots dans la colonne «recherche» se produisant dans la chaîne «papillons d'Amérique», quel que soit le nombre ou l'ordre des mots de recherche. Je voudrais récupérer 1,2 et 4 dans cet exemple) J'utilise maintenant une boucle codée pour résoudre ce problème, ce serait sympa de le résoudre plus efficacement avec mysql. J'ai essayé la recherche en texte intégral et les expressions régulières, mais je suis complètement coincé. Tx.
Wow, réponse rapide, merci! J'ai essayé vos suggestions. Votre premier SELECT ne renvoie que les enregistrements 1 et 2, mais je voudrais aussi récupérer 4 ("america" et "butterflies" apparaissent dans la chaîne). Le second SELECT retourne tous les enregistrements, mais je ne veux pas enregistrer 3 ('birds' n'apparait pas dans la chaîne).Des idées sur la façon de modifier l'expression rationnelle? – wikkie
Maintenant, j'ai réalisé ce que vous voulez. Va venir avec la solution bientôt j'espère :) –
Ok, essayé à nouveau et maintenant la requête ne renvoie aucun enregistrement; il demande des enregistrements qui contiennent tous les mots (butterflies + of + america), et aucun des enregistrements ne contient tous les mots. Changer le AND en OR ne fait rien de bien (retourne tous les enregistrements à nouveau). – wikkie