Bonjour

Ci-après une requête qui cherche dans des champs indexés. Le résultat de mes trois conditions "where" individuellement arrivent en quelques milli-sec. Mais les 3 ensembles (comme ci-après) arrivent en 7 secondes. Mes "or" ne sont pas une bonne idée??? Autre?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SELECT tblpublications.gid AS gid_publications,
tblpublications.title as title
 
 FROM 
 
tblpublications
    left  JOIN tblpublicationstokeywords ON tblpublications.gid =
      tblpublicationstokeywords.gid_publications
 left  JOIN tlkpkeywords ON tblpublicationstokeywords.gid_keywords =
      tlkpkeywords.gid
 
 WHERE 
 
tblpublications.tsvector_abstract @@ to_tsquery('Teriflunomide')  OR
        tblpublications.tsvector_title @@ to_tsquery('Teriflunomide') OR
 tlkpkeywords.tsvector_keywords @@ to_tsquery(
 'Teriflunomide | 108605-62-5 | 282716-73-8')
 
 GROUP BY tblpublications.gid,
 tblpublications.title;

Merci

Martin