Bonjour,

J'ai dans une requête les lignes suivantes dans la clause where :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
tab1.champ1 in ('xxx', 'yyy', 'zzz') 
and tab2.champ2 like ('%xxx%','%yyy%','%zzz%')
dans la première ligne, c'est simple je veux que mon champ1 soit égale à une des valeurs de la liste.
Dans la 2ème ligne, je veux que champ2 contienne une des valeurs de la liste.
Les 2 listes de valeurs sont identiques. Sauf que pour la 2ème ligne, je mets des % et c'est pour ça que j'utilise le like.

Ensuite je me demande, est ce que c'est possible de reprendre la valeur sélectionné dans la 1ère ligne et de l'utiliser dans la deuxième ligne ?

Est-ce que vous pourriez m'aider à écrire de façon correcte et optimale ma requête?

Je précise que ma liste de valeurs est trés grande. Par conséquent est-ce qu'il n'y aurait pas meilleur moyen que d'écrire par exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
where tab2.champ2 like %xxx% or tab2.champ2 like %yyy% or tab2.champ2 like %zzz%
Merci d'avance pour votre aide