Insert-Statement

Hallo liebe Wissenden,

wie kann ich mit Oracle SQL in eine Tabellenspalte Daten aus einer anderen Tabelle in Abhängigkeit von den Angaben in einer anderen Spalte eingeben?

Beispiel: Ich habe zwei Tabellen, die jeweils die Spalten A und B (und außerdem irgendwelche anderen, evtl. unterschiedlichen Spalten) enthalten. In Tabelle 1 sind diese beiden Spalten gefüllt, in Tabelle 2 ist nur Spalte A gefüllt. Die Spalten A aus den beiden Tabellen müssen nicht vollständig übereinstimmen, enthalten aber zumindest viele gleiche Einträge. Ich möchte nun in der zweiten Tabelle die Spalte B füllen, und zwar möchte ich die Daten der Spalte B aus Tabelle 1 übernehmen, mit gleichem Bezug zu Spalte A in beiden Tabellen. Es müsste also irgendwie mit einem insert-Statement laufen und es sollten alle Zeilen durchgegangen und auf Übereinstimmungen in Spalte A geprüft werden. Ist ein Eintrag aus Tabelle 2, Spalte A auch in Tabelle 1, Spalte A enthalten, soll ihm in Tabelle 2 in Spalte B der gleiche Wert zugeordnet werden wie das in Tabelle 1 schon der Fall ist.

So, ich hoffe, das war einigermaßen verständlich. *g* Sorry, wenn’s so kompliziert klingt, aber ich weiß nicht, wie ich es besser erklären kann.

Viele Grüße,
Anja

Klingt mehr wie ein update der folgenden Art:

update (select tab1.b b_1, tab2.b b_2
from tab1, tab2
where tab1.a = tab2.a)
set b_2 = b_1

Vorraussetzung das das funktioniert ist, dass es einen unique key auf tab1.a gibt.

Aaahhh, ok, danke. :smile: Du hast mir sehr geholfen. :smile:

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]