Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie aktualisiere ich mehrere Tabellen mit identischen Werten in MySQL?

Barbara Streisand
Freigeben: 2024-11-02 20:36:03
Original
902 Leute haben es durchsucht

How to Update Multiple Tables with Identical Values in MySQL?

Aktualisieren mehrerer Tabellen mit identischen Werten

Überlegungen zu Abfragen:

Das Ziel ist die Aktualisierung zwei Tabellen, Table_One und Table_Two, mit identischen Werten für bestimmte Spalten (d. h. Sieg, Streak und Punktzahl) basierend auf bestimmten Kriterien (d. h. Benutzer-ID). Allerdings weisen die Tabellen einige Unterschiede auf: Table_Two fehlt das Deckelfeld und ihre Namen variieren.

Multi-Table-Update-Ansatz:

MySQL bietet die Flexibilität, Multi durchzuführen -Tabellenaktualisierungen über eine einzige Abfrage. Dieser Ansatz nutzt die Leistungsfähigkeit von Joins, um die Tabellen auf der Grundlage gemeinsamer Spalten zu verknüpfen und so die gleichzeitige Aktualisierung mehrerer Zeilen in den teilnehmenden Tabellen zu ermöglichen.

Aktualisierte Abfrage:

<code class="sql">UPDATE Table_One a
INNER JOIN Table_Two b ON (a.userid = b.userid)
SET
  a.win = a.win+1, a.streak = a.streak+1, a.score = a.score+200,
  b.win = b.win+1, b.streak = b.streak+1, b.score = b.score+200
WHERE a.userid = 1 AND a.lid = 1 AND b.userid = 1;</code>
Nach dem Login kopieren

In dieser Aktualisierungsabfrage für mehrere Tabellen:

  • Die INNER JOIN-Klausel stellt eine Beziehung zwischen den beiden Tabellen basierend auf der Benutzer-ID-Spalte her.
  • Die SET-Klausel gibt die Spalten an und aktualisiert Werte für Table_One und Table_Two.

Einschränkungen und Alternativen:

Es ist wichtig zu beachten, dass Multi-Table-Updates LIMIT nicht unterstützen. Folglich aktualisiert die Abfrage möglicherweise mehr Zeilen als beabsichtigt. Daher sind Transaktionen oder gespeicherte Prozeduren möglicherweise geeignetere Lösungen, um sicherzustellen, dass beide Aktualisierungen atomar ausgeführt werden.

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich mehrere Tabellen mit identischen Werten in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!