La fonction de recherche en texte intégral de Sqlite3 - FTS3 - permet d'utiliser l'opérateur MATCH pour une recherche rapide en texte intégral :
SELECT ItemId FROM docs WHERE docs.text MATCH 'linux'
Cependant, il ne supporte pas l'opérateur OR n'importe où dans une requête SQL où il y a un MATCH (source : 1 , 2 ):
SELECT ItemId FROM docs WHERE docs.text MATCH 'linux' OR column=value
error: unable to use function MATCH in the requested context
(A ne pas confondre avec l'opérateur OR dans la requête FTS3 elle-même, c'est à dire SELECT ItemId FROM docs WHERE docs.text MATCH 'linux OR unix'
. Cela fonctionne bien).
Existe-t-il un moyen de réécrire la requête pour qu'elle fonctionne (même si elle est un peu plus lente) ?