Hallo,
ich hab folgendes SQL-Statement:
Wenn die Ausgabe testweise funktioniert, will ich es zu einem DELETE umbauen:
[HTMLdelete from ARTIKEL
where
GEAEND < '2010-03-20' AND
( select count(*) from JOURNALPOS where ARTNUM = ARTIKEL.ARTNUM ) < 1 AND
MENGE_AKT = 0[/HTML]
Das Problem ist, ich musste das Select nach 9 Stunden abbrechen weil es zu lange gedauert hat.
Allerdings wüsste ich nicht, wie ich das optimieren könnte. Das Sub-Select bekomm ich ja nicht raus, oder?
Mal schnell noch die Logik in Textform:
Ich möchte alle Artikelnummern, welche das letzte mal vor dem 20.03.2010 geändert wurden, bei welchen die Menge = 0 ist und welche noch nie verkauft wurden, also wo kein Satz in der Tabelle JOURNALPOS vorhanden ist.
Hat von euch da jemand noch ne Idee?
ich hab folgendes SQL-Statement:
HTML:
select artnum from ARTIKEL
where
GEAEND < '2010-03-20' AND
( select count(*) from JOURNALPOS where ARTNUM = ARTIKEL.ARTNUM ) < 1 AND
MENGE_AKT = 0
[HTMLdelete from ARTIKEL
where
GEAEND < '2010-03-20' AND
( select count(*) from JOURNALPOS where ARTNUM = ARTIKEL.ARTNUM ) < 1 AND
MENGE_AKT = 0[/HTML]
Das Problem ist, ich musste das Select nach 9 Stunden abbrechen weil es zu lange gedauert hat.
Allerdings wüsste ich nicht, wie ich das optimieren könnte. Das Sub-Select bekomm ich ja nicht raus, oder?
Mal schnell noch die Logik in Textform:
Ich möchte alle Artikelnummern, welche das letzte mal vor dem 20.03.2010 geändert wurden, bei welchen die Menge = 0 ist und welche noch nie verkauft wurden, also wo kein Satz in der Tabelle JOURNALPOS vorhanden ist.
Hat von euch da jemand noch ne Idee?