2011-07-07 2 views
0

J'ai entendu beaucoup de discussions similaires, mais je n'ai pas vu une solution directe.mysql fulltext plusieurs mots d'une entrée de formulaire?

SELECT * FROM patient_db WHERE 
     MATCH (Name, id_number) AGAINST ('%$term%' IN BOOLEAN MODE); 

est pas là quelque chose de simple autour de mon '% $% terme je dois faire pour activer la recherche de plusieurs mots?

Répondre

1

Malheureusement, il n'y a aucun moyen de dire directement "Je veux un de ces mots n" dans une requête MySQL fulltext. Votre seule option est

SELECT * FROM patient_db WHERE 
     MATCH (Name, id_number) AGAINST ('%$term%' IN BOOLEAN MODE) 
     OR MATCH (Name, id_number) AGAINST ('%$term2%' IN BOOLEAN MODE) 
     OR MATCH (Name, id_number) AGAINST ('%$term3%' IN BOOLEAN MODE) 
     ; 

Juste curieux, mais pourquoi vous cherchez une colonne nommée id_number pour le texte?

+0

Je veux simplement fournir un ui pour notre personnel qui peut rechercher le nom ou le numéro d'identification - Je ne suis pas trop avertis avec mySQL encore, un mot fonctionne très bien, mais deux mots « prenom nom » hasnt encore travaillé – iamwhitebox