MySQL Update Spalte mit Wert aus einer anderen Tabelle
Ich habe zwei Tabellen, die beide Aussehen wie
id name value
===================
1 Joe 22
2 Derk 30
Muss ich kopieren Sie den Wert des value
aus tableA
zu tableB
basierend auf Namen überprüfen in jeder Tabelle.
Irgendwelche Tipps für diese UPDATE
Aussage?
InformationsquelleAutor der Frage LeoSam | 2012-07-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zusätzlich zu dieser Antwort, wenn Sie Sie brauchen, um t1.Wert nach t2.Wert dynamisch Sie tun können, zum Beispiel:
InformationsquelleAutor der Antwort RafaSashi
müssen Sie join der beiden Tabellen:
für die Instanz aus, die Sie kopieren möchten, den Wert von
name
aus tableA intableB
wo haben Sie die gleichenID
UPDATE 1
UPDATE 2
InformationsquelleAutor der Antwort John Woo
Zweite Möglichkeit ist,
InformationsquelleAutor der Antwort Samir Alajmovic
Die zweite option ist machbar, auch wenn Sie mit den safe-updates-Modus (und Sie werden immer ein Fehlermeldung, die angibt, dass Sie versucht haben, aktualisieren Sie eine Tabelle ohne WHERE verwendet, die eine KEY-Spalte), indem:
InformationsquelleAutor der Antwort raul7
--Speichern Sie Ihre Daten in temp-Tabelle
Select * into tempTable aus Tabelle1
--Jetzt die Spalte Aktualisieren
UPDATE table1
SET Tabelle1.Mit dem Namen = (select FileName from tempTable where tempTable.id = table1.ID);
InformationsquelleAutor der Antwort Abid Mahmood
Wenn Sie haben gemeinsame Feld in der Tabelle dann ist es so einfach !....
Tabelle 1 = Tabelle, wo Sie wollen, Sie zu aktualisieren.
Tabelle 2 = Tabelle, wo Sie aus Daten.
InformationsquelleAutor der Antwort Mahabubur Rahman Masum