Rechercher dans le manuel MySQL

12.9.3 Full-Text Searches with Query Expansion

Full-text search supports query expansion (and in particular, its variant blind query expansion). This is generally useful when a search phrase is too short, which often means that the user is relying on implied knowledge that the full-text search engine lacks. For example, a user searching for database may really mean that MySQL, Oracle, DB2, and RDBMS all are phrases that should match databases and should be returned, too. This is implied knowledge.

Blind query expansion (also known as automatic relevance feedback) is enabled by adding WITH QUERY EXPANSION or IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION following the search phrase. It works by performing the search twice, where the search phrase for the second search is the original search phrase concatenated with the few most highly relevant documents from the first search. Thus, if one of these documents contains the word databases and the word MySQL, the second search finds the documents that contain the word MySQL even if they do not contain the word database. The following example shows this difference:

  1. mysql> SELECT * FROM articles
  2.     WHERE MATCH (title,body)
  3.     AGAINST ('database' IN NATURAL LANGUAGE MODE);
  4. +----+-------------------+------------------------------------------+
  5. | id | title             | body                                     |
  6. +----+-------------------+------------------------------------------+
  7. |  1 | MySQL Tutorial    | DBMS stands for DataBase ...             |
  8. |  5 | MySQL vs. YourSQL | In the following database comparison ... |
  9. +----+-------------------+------------------------------------------+
  10. 2 rows in set (0.00 sec)
  11.  
  12. mysql> SELECT * FROM articles
  13.     WHERE MATCH (title,body)
  14.     AGAINST ('database' WITH QUERY EXPANSION);
  15. +----+-----------------------+------------------------------------------+
  16. | id | title                 | body                                     |
  17. +----+-----------------------+------------------------------------------+
  18. |  5 | MySQL vs. YourSQL     | In the following database comparison ... |
  19. |  1 | MySQL Tutorial        | DBMS stands for DataBase ...             |
  20. |  3 | Optimizing MySQL      | In this tutorial we will show ...        |
  21. |  6 | MySQL Security        | When configured properly, MySQL ...      |
  22. |  2 | How To Use MySQL Well | After you went through a ...             |
  23. |  4 | 1001 MySQL Tricks     | 1. Never run mysqld as root. 2. ...      |
  24. +----+-----------------------+------------------------------------------+
  25. 6 rows in set (0.00 sec)

Another example could be searching for books by Georges Simenon about Maigret, when a user is not sure how to spell Maigret. A search for Megre and the reluctant witnesses finds only Maigret and the Reluctant Witnesses without query expansion. A search with query expansion finds all books with the word Maigret on the second pass.

Note

Because blind query expansion tends to increase noise significantly by returning nonrelevant documents, use it only when a search phrase is short.


Rechercher dans le manuel MySQL

Traduction non disponible

Le manuel MySQL n'est pas encore traduit en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.

Document créé le 26/06/2006, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/mysql-rf-fulltext-query-expansion.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :en Manuel MySQL : https://dev.mysql.com/

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut