MySQL-Update-Fall Update-Feldwert ist keine feste Operation

MySQL-Update-Fall Update-Feldwert ist keine feste Operation

Wenn bei der Verarbeitung von Batch-Updates bestimmter Daten die Werte der zu aktualisierenden Felder gleich sind, z. B. wenn ein bestimmter Status auf einen festen Wert aktualisiert wird,

Verwenden Sie einfach das Update-Tabellenset xxx=xxx, wobei xxx=xxx

Wenn der Wert des zu aktualisierenden Felds nicht festgelegt ist, ist es bequemer, bei der Where-Methode den folgenden Aktualisierungsfall zu verwenden:

UPDATE Tabellenname 
setze a1= CASE Benutzer-ID 
 Wenn 1, dann a1+5 
 WENN 2, DANN a1+2 
 ENDE,
a2= CASE Benutzer-ID 
 WENN 1, DANN a2-5 
 WENN 2, DANN a2-2
ENDE
wobei Benutzer-ID in (1,2)

Bei der Verwendung des Update-Cases „When“ müssen Sie unbedingt die Where-Bedingung einschließen, da sonst die gesamte Tabelle aktualisiert wird, was schwerwiegende Folgen haben kann.

Ergänzung: MySQL-Update && Case in Kombination mit Batch-Update

Direkter Code SQL:

Der Raumfeldwert hat das Format 18F-N01

UPDATE t_report SET Zimmer = CONCAT_WS( '-', SUBSTRING_INDEX(Zimmer, '-', 1) ,
 CASE SUBSTRING_INDEX(Zimmer, '-', -1) 
 WENN 'N01', DANN 'N02' 
 WENN 'N02', DANN 'N01'
 WENN 'N03', DANN 'N11'
 WENN 'N04', DANN 'N10'
 WENN 'N05', DANN 'N09'
 WENN 'N06', DANN 'N08'
 WENN 'N07', DANN 'N07'
 WENN 'N08', DANN 'N06'
 WENN 'N09', DANN 'N05'
 WENN 'N10', DANN 'N03'
 ENDE )
WO reiten IN ( 
 SELECT rid FROM t_report WHERE rdate = '190306' AND ordinal BETWEEN '23' AND '32'
)

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Praktisches MySQL + PostgreSQL Batch-Insert-Update insertOrUpdate
  • Unterschied zwischen MySQL-Update-Set und und
  • Nicht standardmäßiger Implementierungscode für die MySQL UPDATE-Anweisung
  • Zusammenfassung der gemeinsamen Updatemethode für MySQL-Updates mehrerer Tabellen
  • Erläuterung der MySQL-Transaktionsauswahl für die Aktualisierung und Datenkonsistenzverarbeitung
  • Eine "klassische" Falle der MySQL UPDATE-Anweisung

<<:  Was Sie beim Schreiben selbstschließender XHTML-Tags beachten sollten

>>:  Wie löst Vue das domänenübergreifende Problem des Axios-Request-Frontends?

Artikel empfehlen

Detaillierte Erläuterung der Js-Klassenkonstruktion und Vererbungsfälle

Die Definition und Vererbung von Klassen in JS si...

Docker View-Prozess, Speicher und Cup-Verbrauch

Docker-Ansichtsprozess, Speicher, Cup-Verbrauch S...

Praktische Methode zum Löschen einer Zeile in einer MySql-Tabelle

Zunächst müssen Sie bestimmen, welche Felder oder...

mysql 5.7.5 m15 winx64.zip Installations-Tutorial

So installieren und konfigurieren Sie mysql-5.7.5...

Eine kurze Diskussion über Browserkompatibilitätsprobleme in JavaScript

Die Browserkompatibilität ist der wichtigste Teil...

Zwei Möglichkeiten zur Installation von Python3 auf Linux-Servern

Erste Methode Alibaba Cloud- und Baidu Cloud-Serv...

Der praktische Prozess des Login-Status-Managements im vuex-Projekt

Inhaltsverzeichnis Werkzeug: Anmeldeszenario: übe...

Detaillierte Erklärung der Anwendungsfälle von Vue-Listenern

Die erste Möglichkeit besteht darin, jQuery's...

Bringen Sie Ihnen bei, wie Sie den Beobachtermodus in Javascript implementieren

Inhaltsverzeichnis Was ist das Beobachtermuster? ...

jQuery verwendet das Canvas-Tag, um den Bestätigungscode zu zeichnen

Das <canvas>-Element ist für clientseitige ...

XHTML verwendet einige veraltete Elemente in HTML nicht mehr

Wenn wir CSS-Webseitenlayouts erstellen, wissen wi...