PDA

View Full Version : Tabellenupdate mit SQL



Schorsch
05-07-04, 14:44
Hallo an alle.
Heute habe ich mal eine Frage zu SQL.
Ich möchte eine Tabelle mit Werten einer anderen updaten.

Wie stelle ich es (unter V5R2M0) in SQL an?

Danke
Schorsch

B.Hauser
05-07-04, 19:39
Hallo Schorsch,

das ist ein bisschen komplexer.
Du benötigst im Set einen Select um die Feldwerte aus der anderen Tabelle zu ermitteln. Zusätzlich, musst Du sicher stellen, dass das Ergebnis genau einen Satz zurückliefert.

Hier ein Beispiel:


update MyTable2 A
set (A.Feld1, A.Feld2) = (select B.Feld1, B.Feld2
from Mytable1 B
where A.Key1 = B.Key1
and A.Key2 = B.Key2)
where exists (select C.Key1, C.Key2
from MyTable1 C
where A.Key1 = C.Key1
and A.Key2 = C.Key2)


Wenn ich mich jetzt nicht vertippt habe, müsste es so funktionnieren.

Birgitta

Schorsch
06-07-04, 08:44
Hallo Schorsch,

das ist ein bisschen komplexer.
Du benötigst im Set einen Select um die Feldwerte aus der anderen Tabelle zu ermitteln. Zusätzlich, musst Du sicher stellen, dass das Ergebnis genau einen Satz zurückliefert.

Hier ein Beispiel:


update MyTable2 A
set (A.Feld1, A.Feld2) = (select B.Feld1, B.Feld2
from Mytable1 B
where A.Key1 = B.Key1
and A.Key2 = B.Key2)
where exists (select C.Key1, C.Key2
from MyTable1 C
where A.Key1 = C.Key1
and A.Key2 = C.Key2)


Wenn ich mich jetzt nicht vertippt habe, müsste es so funktionnieren.

Birgitta

Klappt prima. Danke vielmals.
Schorsch