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    

Artikel empfehlen

So verwenden Sie Vuex in einem Vue-Projekt

Inhaltsverzeichnis Was ist Vuex? Vuex-Nutzungszyk...

So erstellen Sie einen DHCP-Server in Linux

Inhaltsverzeichnis 1. Grundkenntnisse: 2. DHCP-Se...

Hinweise zum Zeichengerätetreiber des Linux-Kernel-Gerätetreibers

/******************** * Zeichengerätetreiber*****...

Zusammenfassung der Lösung für den Webpack -v-Fehler von Vue

Xiaobai lernte Vue kennen, dann lernte er Webpack...

Kurs zur Web-Frontend-Entwicklung Was sind die Web-Frontend-Entwicklungstools

Mit der Entwicklung der Internettechnologie werde...

Zusammenfassung der Verwendung von JavaScript JSON.stringify()

Inhaltsverzeichnis 1. Nutzung 1. Grundlegende Ver...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.17 winx64

Ich habe die vorherigen Hinweise zur Installation...

Erfahrungsaustausch zur Optimierung von MySQL-Big-Data-Abfragen (empfohlen)

Ernsthafte MySQL-Optimierung! Wenn die MySQL-Date...