Forum: Datenbanken
Delphi
by dataspider,
22. Feb 2006
Ich denke nicht, dass du damit eine bessere Performance erzielst, da der Server trotzdem für jeden Record aus Taberlle Artikel das IN - Statement ausführen muss. Du vermeidest allerdings so Lock - Konflikte, da nich so viel Updates gefeuert werden.
Hier würde ich eine Procedure schreiben, wo du einen group select über Material machst und diesen dann durchläufst und Artikel updatest.
...
Forum: Datenbanken
Delphi
by dataspider,
22. Feb 2006
Hallo Hans,
wenn du alle Artikel updaten möchtest, brauchst du keine Eingrenzug mit Where.
Allerdings kann dein SubSelect auch ein null liefern, da in der Tabelle Material nicht alle Artikel sind.
Ich würde da noch ein coalesce drum machen:
UPDATE ARTIKEL SET GEPLANT = GEPLANT +
coalesce(SELECT SUM(MENGE) FROM MATERIAL
WHERE MATERIAL.ARTIKEL = ARTIKEL.ID AND...