Aktualisierung einer Tabelle, durch einen Verweis auf eine andere Tabelle
Ich habe eine Tabelle CustPurchase
(name, Kauf) und eine weitere Tabelle CustID
(id, name).
Veränderte ich die CustPurchase
Tabelle ein id
Feld. Nun, ich möchte füllen Sie das neu erstellte Feld von verweisen auf die Kunden-ids aus der CustID
Tabelle:
UPDATE CustPurchase
SET CustPurchase.id = CustID.id
WHERE CustPurchase.name = CustID.name;
Ich bekomme immer syntax Fehler!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, Sie sind nach den nützlichen
UPDATE FROM
syntax.Diese haben könnten zu sein, die folgenden:
Sorry, ich bin Weg von meiner Postgres-Maschine; jedoch basierend auf der Referenz -, wie es aussieht, ist dies zulässig. Das Problem ist, ob oder nicht die Quelle-Tabelle in der from_list.
Beitritt von Namen ist keine ideale Wahl, aber dieser sollte funktionieren:
Die Einschränkung ist, dass, wenn es keine übereinstimmung, wird der Wert Versuch eingefügt werden würde
NULL
. Vorausgesetzt, dieid
Spalte wird nicht zulassen, dassNULL
aber doppelte Werte:COALESCE
wird wieder das erste nicht-NULL-Wert. Macht dies einen Wert außerhalb von dem, was Sie normalerweise erwarten, dass macht es einfacher zu isolieren, die solche Aufzeichnungen & Angebot mit entsprechend.Ansonsten müssen Sie die Aktualisierung "von hand", auf einen Namen, indem Sie name Grundlage, um die richtigen Instanzen, SQL konnte nicht.