Bonjour,
Je cherche à optimiser une requête sous Oracle :

imaginons une table TABLE1:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
-----------------
|REF1  |REF2    |
-----------------
|1     |1       |
|2     |1       |
|2     |2       |
|3     |2       |
-----------------
Je veux avoir toutes les REF1 qui ont REF2='1' ET REF2='2'
Donc dans l'exemple, ça renverrait seulement REF1='2'

Voilà la requête que j'ai trouvé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
select distinct REF1 from TABLE1
where REF2='2' 
and REF1 in (select distinct REF1 from TABLE1
where REF2='1')
order by REF1
Si vous aviez une idée pour éviter une imbriquation de requête, cela m'arrangerait.
Si en plus cela fonctionnerait pour faire une recherche genre REF2='1' ET REF2='2' ET REF2='3', ce serait le top.

Merci d'avance.
Phil.