494 Stimmen

Wie kann ich drei Tabellen-Joins in einer UPDATE-Abfrage machen?

Ich habe eine Frage gestellt und diese Antwort erhalten, die mir geholfen hat.

   UPDATE TABLE_A a JOIN TABLE_B b
   ON a.join_col = b.join_col AND a.column_a = b.column_b
   SET a.column_c = a.column_c + 1

Jetzt versuche ich dies zu tun, wenn drei Tabellen involviert sind, so etwas wie dies.

    UPDATE tableC c JOIN tableB b JOIN tableA a

Meine Frage ist im Grunde... ist es möglich, drei Tabellen in einem UPDATE-Statement zu verbinden? Und wie ist die korrekte Syntax dafür?

Mache ich folgendes?

 JOIN tableB, tableA
 JOIN tableB JOIN tableA

1voto

Mс1er Punkte 59

Für ein PostgreSQL-Beispiel:

UPDATE TableA AS a
SET param_from_table_a=FALSE -- param AUS TableA
FROM TableB AS b
WHERE b.id=a.param_id AND a.amount <> 0;

0voto

Keine der Antworten funktioniert für mich, ich habe das im MySQL-Handbuch gefunden

UPDATE T1,T2 INNER JOIN T2 ON T1.C1 = T2.C1 SET T1.C2 = T2.C2,       T2.C3 = expr WHERE condition

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X