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

So zeigen Sie MySql-Indizes an und optimieren sie

MySQL unterstützt Hash- und B-Tree-Indizes. InnoD...

MySQL 8.0 MIT Abfragedetails

Inhaltsverzeichnis Informationen zu WITH-Abfragen...

Detaillierte Erklärung der CocosCreator-Optimierung DrawCall

Inhaltsverzeichnis Vorwort Was ist DrawCall Welch...

Detaillierte Erklärung zur Verwendung des MySQL-Sicherungsskripts mysqldump

In diesem Artikel wird das MySQL-Sicherungsskript...

Detaillierte Erklärung des Nginx Reverse-Proxy-Beispiels

1. Reverse-Proxy-Beispiel 1 1. Erzielen Sie den E...

Probleme mit Index und FROM_UNIXTIME in MySQL

Null, Hintergrund Ich habe diesen Donnerstag viel...

So implementieren Sie Web-Stresstests mit Apache Bench

1. Einführung in Apache Bench ApacheBench ist ein...

So starten Sie ein Vue-Projekt mit dem M1 Pro-Chip

Inhaltsverzeichnis Einführung Homebrew installier...

7 Fähigkeiten, die großartige Grafikdesigner beherrschen müssen

1》Seien Sie gut im Webdesign 2》Wissen, wie man Web...

Best Practices zum Teilen von React-Code

Wenn ein Projekt eine gewisse Komplexität erreich...

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

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