Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Zwei Tabellen mergen (https://www.delphipraxis.net/106889-zwei-tabellen-mergen.html)

xaromz 18. Jan 2008 09:22

Datenbank: MySQL • Version: 5.0 • Zugriff über: -

Zwei Tabellen mergen
 
Hallo,

ich habe zwei Tabellen, die über einen gemeinsamen Key verfügen:

Tabelle 1:
index, key, feld1, feld2

Tabelle 2:
index, key, feld3, feld4

Ich möchte nun Tabelle 1 um zwei Felder erweitern und die Felder 3 und 4 aus Tabelle 2 in die neuen Felder übernehmen.

Ungefähr so:
SQL-Code:
UPDATE tabelle1 SET tabelle1.feld3 = SELECT feld3 FROM tabelle2 WHERE tabelle2.key = tabelle1.key
So funktioniert das ja nicht, da ich die Zeile in Tabelle 1 nicht angebe und die Ergebnismenge des Selects nicht eindeutig ist.
Gibt es da eine Möglichkeit, die beiden Tabellen zu verschmelzen?

Gruß
xaromz

mkinzler 18. Jan 2008 09:26

Re: Zwei Tabellen mergen
 
Ich würde temporär eine neue tabelle erzeugen, per Outer join die Tabellen zusammenführen und dort einfügen.
Unterstützt MySQL Merge, Insert or update, o.ä.?

xaromz 18. Jan 2008 09:49

Re: Zwei Tabellen mergen
 
Hallo,
Zitat:

Zitat von mkinzler
Ich würde temporär eine neue tabelle erzeugen, per Outer join die Tabellen zusammenführen und dort einfügen.

das hört sich gut an. Kannst Du mir da ein Beispiel geben?
Zitat:

Zitat von mkinzler
Unterstützt MySQL Merge, Insert or update, o.ä.?

Da bin ich überfragt.

Gruß
xaromz

generic 18. Jan 2008 10:13

Re: Zwei Tabellen mergen
 
mit dem sub query wirst du nicht viel erfolg haben.
aber wie du hier in der anleitung lesen kannst:
http://dev.mysql.com/doc/refman/5.0/en/update.html

ist das möglich ("Multiple-table syntax").

mkinzler 19. Jan 2008 07:50

Re: Zwei Tabellen mergen
 
Das scheint ja ein Merge-Äquivalent zu sein.
Sonst würde ich es mit Insert into ... Select in eine neue Tabelle und einem outer join versuchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz