[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] requete complexe
From: |
Pierrick Brihaye |
Subject: |
Re: [sdx-users] requete complexe |
Date: |
Sat, 31 May 2003 19:14:24 +0200 |
Bonjour,
>Je voudrais faire une requête sur deux champs w-term et w-termTraduit de
type texte. La valeur est saisie dans un formulaire à la rubrique w-leTerme.
Etant donné, qu'apparemment, il n'y a qu'une *valeur* attendue pour un champ
déterminé...
>Il y a peut-être un moyen plus simple d'écrire tout cela?
... on peut sans doute faire plus simple avec des fieldQuery.
><sdx:linearQuery field="term" valueParam="term" op="or"/>
Une linearQuery avec 1 champ et 1 valeur ne présente a priori aucun intérêt.
><sdx:complexQuery>
> <sdx:simpleQuery field="w-termTraduit" queryParam="w-leTerme" op="and"/>
></sdx:complexQuery>
Idem pour une complexQuery n'ayant qu'une seule composante.
Néanmoins, votre problème vient sans doute de là :
> <sdx:complexQuery>
> <sdx:simpleQuery field="w-termTraduit" queryParam="w-leTerme" op="and"/>
> <sdx:simpleQuery field="w-term" queryParam="w-leTerme" op="or"/>
> </sdx:complexQuery>
En effet, l'opérateur par défaut d'une complexQuery est un "AND". Il ne faut
pas confondre "op" qui s'applique à la composante et "complexop" qui permet
de lier les composantes entre elles.
>term=term1 and (w-termTraduit=leTerme or w-term=leTerme) and
(w-definition=def1)
Ainsi, avec 4 fieldQuery (dont 2 au sein d'une ComplexQuery), vous devriez
parvenir au résultat escompté.
A bientôt,
p.b.