Update Tabelle a aus Tabelle b, wo (Bedingungen)
Abend alle,
Eigentlich ist es Nacht. Über 11 Uhr. Mein Gehirn schaltet ab und ich brauche ein bisschen Hilfe, damit ich das beenden kann und nach Hause gehen 🙂
Ich habe zwei Tabellen, Tabelle a und Tabelle b.
Muss ich zum aktualisieren eines Felds in Tabelle a mit dem Wert aus einem Feld in Tabelle b, wenn die beiden anderen Felder übereinstimmen. Die Tabellen haben nicht eine eindeutige id für jeden Datensatz 🙁
Grundsätzlich, dass ich dies tun wollen:
update a
set importantField =
(select b.importantfield
from b
where a.matchfield = b.matchfield
and a.matchfield2 = b.matchfield2
)
where a.matchfield = b.matchfield
and a.matchfield2 = b.matchfield2
Oder zumindest... ich denke, das ist, was ich tun soll...
Kann mir jemand helfen, bitte?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie dies über einen join im update:
a
Tabelle, um für diese zu arbeiten, oder bin ich etwas fehlt?Verwenden:
SQL Server unterstützt keine Tabellen-aliases auf die Tabelle, die aktualisiert wird, aber die oben ist eine korrelierte Abfrage - Felder, ohne die Tabelle alias
b
befestigt wird, dienen die Werte ausTABLE_A
weil es nicht ein alias.Das einzige Problem darüber hinaus ist, wenn es mehrere
b.importantfield
Werte für Datensätze mit übereinstimmenden Datensätze zu TABLE_A. Verwendung:..aber Sie sollten eine
ORDER BY
als gut oder Sie erhalten eine zufälligeb.importantfield
Wert.