@mkinzler
Die Beschreibung klingt gut
Für einen einzelnen Datensatz ist es ja sicherlich auch richtig.
Aber was macht der Optimizer, wenn das not exists gegen tausende oder mehr Artikel gefahren wird? Immer wieder los rennen und suchen .. ?
@Gruber_Hans_12345
1500 -2000 Datensätze sind nicht viel.
Wenn das V_AUFTRAG_PO im echten Leben so komplex ist, lohnt es sich vielleicht, erst die Differenz zu bilden (die mglw. noch zu viele Datensätze enthält) und anschließend auf dem Ergebnis die "komplexen " Joins zu fahren.
Also ungefähr
Code:
select * from (
SELECT A.ID
FROM ARTIKEL A
LEFT JOIN POSITION T ON (A.ID = T.ARTIKEL_ID)
WHERE T.ARTIKEL_ID IS NULL
GROUP BY A.ID
) Dif
where .. komplexe Bedingungen
Hier gibts vielleicht noch tolle Hinweise zum Optimizer.