problème requete : DELETE pr0 WHERE num1 in(select ..
Bonjour,
j'ai cette requète :
Code:
1 2 3
| select pr0.num1 from pr0 where pr0.num1 is not null
minus
select pr0.num1 from pm0, pr0 where pm0.nrid = pr0.num1 |
elle me ramène 16 enregistrements
Je veux supprimer ces 16 enregistrements en une seule requète. J'ai donc fait :
Code:
1 2 3
|
DELETE pr0 WHERE pr0.num1 in(select pr0.num1 from pr0 minus select
pr0.num1 from pm0, pr0 where pm0.nrid = pr0.num1) |
mais ça me supprimer 875 enregistrements. Je ne comprends pas pourquoi.
De plus, j'aurais aimer faire une requète sans "IN" (trop long à l'exécution). Est ce que cette requète ferais la même chose que la mienne ? (je comprends pas bien comment marche le "EXISTS" :?
Code:
1 2 3
|
DELETE pr0 WHERE EXISTS(select pr0.num1 from pr0 minus select
pr0.num1 from pm0, pr0 where pm0.nrid = pr0.num1 |
)
Merci d'avance pour vos réponses