Booléens de recherches en texte intégral
<<<
Recherche en texte intégral avec extension de requête Restrictions avec la recherche en texte intégral
>>>

13.6 Recherche en texte intégral ( Full-text ) dans MySQL
13 Fonctions à utiliser dans les clauses SELECT et WHERE
 Manuel de Référence MySQL 4.1 : Version Française

Booléens de recherches en texte intégral
->Recherche en texte intégral avec extension de requête
Restrictions avec la recherche en texte intégral
Paramétrage précis de la recherche en text intégral de MySQL
A faire dans la recherche Full-text

13.6.2 Recherche en texte intégral avec extension de requête

Depuis la version 4.1.1, la recherche en texte intégral supporte l'extension de requête (en particulier la variable dite ``extension aveugle''). C'est généralement utile lorsque la phrase de recherche est trop courte, ce qui signifie que l'utilisateur sous-entend des informations. Par exemple, un utilisateur qui recherche `` database '' peut en fait rechercher `` MySQL8 '', `` Oracle '', `` DB2 '' ou encore `` RDBMS '' : ce sont des solutions qui doivent être liées à `` databases '' et être retournée. C'est de l'information implicite.

L'extension de requête aveugle (dite aussi, pertinence automatique), fonctionne en faisant la même recherche 2 fois : la seconde fois, la recherche est complétée avec les mots les plus fréquents des premiers résultats. Par conséquent, si un de ces document contenait `` databases '' et `` MySQL '', la seconde recherche va rechercher les documents qui contiennent `` MySQL '' mais pas `` database ''. L'exemple suivant illustre la différence :


mysql> SELECT * FROM articles
    -> WHERE MATCH (title,body) AGAINST ('database');
+----+-------------------+------------------------------------------+
| id | title             | body                                     |
+----+-------------------+------------------------------------------+
|  5 | MySQL vs. YourSQL | In the following database comparison ... |
|  1 | MySQL Tutorial    | DBMS stands for DataBase ...             |
+----+-------------------+------------------------------------------+
2 rows in set (0.00 sec)

mysql> SELECT * FROM articles
    -> WHERE MATCH (title,body)
    -> AGAINST ('database' WITH QUERY EXPANSION);
+----+-------------------+------------------------------------------+
| id | title             | body                                     |
+----+-------------------+------------------------------------------+
|  1 | MySQL Tutorial    | DBMS stands for DataBase ...             |
|  5 | MySQL vs. YourSQL | In the following database comparison ... |
|  3 | Optimizing MySQL  | In this tutorial we will show ...        |
+----+-------------------+------------------------------------------+
3 rows in set (0.00 sec)
Un autre exemple est la recherche de livres de Georges Simenon, de la série Maigret, alors que l'utilisateur ne sais pas trop comment écrire `` Maigret ''. Alors que la recherche de `` Megre and the reluctant witnesses '' ne conduit qu'à `` Maigret and the Reluctant Witnesses '' sans l'extension aveugle, la version avec extension aveugle va sortir la collection complète des livres avec le mot `` Maigret ''.

Note : comme l'extension aveugle augmente le niveau de bruit, en retournant des documents sans rapport, elle n'est utile que si la phrase de recherche est courte.

<< Recherche en texte intégral avec extension de requête >>
Booléens de recherches en texte intégral Recherche en texte intégral ( Full-text ) dans MySQL Restrictions avec la recherche en texte intégral