PDA

View Full Version : SQL Delete in iSeries



mikka_71
06-03-07, 10:47
Guten Tag

ich möchte in der Datei A ganze Records löschen wenn in Datei A verbunden mit Datei B diverses zutrifft.

Leider komme ich nun nicht mehr weiter. In etwas folgendes sollte durchgeführt werden:

DELETE FROM LIB/DATEIA WHERE (SELECT FELDA FROM DATEIA,
DATEIB WHERE FELDA1 = FELDB1 and FELDA2 like 'Ausdruck%' and FELDB2 > '0'
and FELDB3 < 20060301)

Danke für eure immer geniale Hilfe
mik

Fuerchau
06-03-07, 11:03
delete from filea
where keya in (select keyb from fileb)

BenderD
06-03-07, 11:45
Hallo,

manchmal brauchts auch:
delete from eineDatei a
where exists (select *
from nochEineDatei b
where a.x = b.y
)
wobei die Bedingung sich aus einer logischen Verknüpfung von Bedingungen über beide beteiligten Dateien zusammen setzen kann.

mfg

Dieter Bender


Guten Tag

ich möchte in der Datei A ganze Records löschen wenn in Datei A verbunden mit Datei B diverses zutrifft.

Leider komme ich nun nicht mehr weiter. In etwas folgendes sollte durchgeführt werden:

DELETE FROM LIB/DATEIA WHERE (SELECT FELDA FROM DATEIA,
DATEIB WHERE FELDA1 = FELDB1 and FELDA2 like 'Ausdruck%' and FELDB2 > '0'
and FELDB3 < 20060301)

Danke für eure immer geniale Hilfe
mik

mikka_71
06-03-07, 13:07
;) Danke für die schnelle Hilfe.... alles perfekt. Eine Mischung von beiden Antworten hat geholfen....

DELETE FROM FileA FeldA where
FileA.FeldA > '0' and FileA.Datum < 20060301 and
FileA.KeyA
IN (SELECT FileB.KeyB FROM FileB, FileA WHERE FileA.X = FileB.X AND
FileB.FeldC like 'Ausdruck%')