Espérons que le titre soit suffisamment clair! Je suis à la recherche d'une seule requête qui reproduit la fonctionnalité de la suivante, mais sans utiliser une sous-requête:Requête SQL unique pour trouver des lignes où une valeur est présente pour une clé mais pas une autre donnée
select p_id from a_p
where a_id=1
and p_id not in (select p_id from a_p where a_id=2)
Par exemple, table a_p a les lignes suivantes:
a_id | p_id
1 | 1
1 | 2
2 | 2
Ici, p_id 1 est présent pour a_id 1 mais pas a_id 2 - la requête ci-dessus ne retournera que p_id 1. Des idées?
Pourquoi l'exigence de ne pas utiliser une sous-requête? Vous êtes en train de vous menotter avec celui-là. – Toby
@Toby: idées fausses sur ce que sont les sous-requêtes et comment l'optimiseur les traite ... –