MATCH |
Correspondance |
---|---|
MySQL |
Syntaxe
Match(col1,col2,...) Against (expr [IN BOOLEAN MODE | WITH QUERY EXPANSION]) |
Paramètres
Nom | Description |
---|---|
col1,col2,... | Ce paramètre permet d'indiquer les champs à utiliser pour la recherche. |
expr | Ce paramètre permet d'indiquer le type de recherche à effectuer. |
Description
Cette fonction permet d'effectuer des recherches indexées dans des types de données «TEXT».
Remarques
- On utilise habituellement cette fonction pour simuler un moteur de recherche à la «Google» ou «Yahoo» mais pour un site personnel. Cependant, si vous l'utilisez, sachez que de nombreux hébergeur n'offrent pas la possibilité de modifier la variable «ft_min_word_len» et ainsi il peut être particulièrement agaçant que cette variable est la valeur 4, exigeant par le fait même un mot d'une longueur de 4 lettres ou plus pour être trouvé.
- Si vous souhaitez utiliser un moteur de recherche plus complet, vous devriez vous intéresser au projet Endeca d'Oracle ou Apache Solr de Lucene.
- Si le contenu de votre site est entièrement documentaire et qu'il couvre des centaines de mégaoctets, il peut être plus pertinent de remplacer MySQL par une base de données MongoDB ou CouchDB laquelle est spécialisé pour les documents, il remplace la notion de table par des paires de clef et de valeur et les performances sont nettement supérieur à celle-ci.
Exemple
L'exemple suivant permet de recherche le mot «gladir» et de retourner les 10 premiers d'une liste sortie en fonction de leur pertinence.
Voir également
Langage de programmation - Concept - Construire un moteur de recherche avec MySQL
Article - Les géants de l'informatique - Oracle
Références
MySQL: The definitive guide to using, programming, and administering MySQL 4 databases - Second Edition, Paul Dubois, 2003, ISBN: 0-7357-1212-3, page 814
Dernière mise à jour : Mercredi, le 29 avril 2015