Heim > Datenbank > MySQL-Tutorial > Wie verwende ich MySQLs ON DUPLICATE KEY UPDATE für mehrere Zeilen?

Wie verwende ich MySQLs ON DUPLICATE KEY UPDATE für mehrere Zeilen?

Linda Hamilton
Freigeben: 2025-01-11 08:14:42
Original
539 Leute haben es durchsucht

How to Use MySQL's ON DUPLICATE KEY UPDATE for Multiple Rows?

Effizienter Umgang mit mehreren Zeilen mit MySQLs ON DUPLICATE KEY UPDATE

MySQL bietet einen optimierten Ansatz für die Verwaltung mehrerer Zeileneinfügungen bei gleichzeitiger Überprüfung und Aktualisierung vorhandener eindeutiger Werte. Dies wird mithilfe der ON DUPLICATE KEY UPDATE-Klausel erreicht. Diese Funktion ermöglicht bedingte Aktualisierungen oder Einfügungen bestimmter Felder innerhalb einer einzelnen Abfrage.

Um vorhandene Zeilen selektiv zu aktualisieren und neue hinzuzufügen, nutzen Sie einen Alias ​​oder das Schlüsselwort VALUES in Verbindung mit ON DUPLICATE KEY UPDATE.

MySQL 8.0.19 und höher (mit einem Alias):

INSERT INTO beautiful (name, age)
    VALUES
    ('Helen', 24),
    ('Katrina', 21),
    ('Samia', 22),
    ('Hui Ling', 25),
    ('Yumie', 29)
    AS new
ON DUPLICATE KEY UPDATE
    age = new.age
Nach dem Login kopieren

MySQL 8.0.19 und früher (unter Verwendung des Schlüsselworts VALUES):

INSERT INTO beautiful (name, age)
    VALUES
    ('Helen', 24),
    ('Katrina', 21),
    ('Samia', 22),
    ('Hui Ling', 25),
    ('Yumie', 29)
ON DUPLICATE KEY UPDATE
    age = VALUES(age)
Nach dem Login kopieren

Diese Beispiele zeigen, wie Daten basierend auf vorhandenen eindeutigen Schlüsseln aktualisiert oder eingefügt werden. Wenn bereits ein eindeutiger Schlüssel vorhanden ist, werden die angegebenen Felder aktualisiert; andernfalls wird eine neue Zeile eingefügt. Das Schlüsselwort VALUES oder der Alias ​​new verweist auf die Werte, die in die INSERT-Anweisung eingefügt werden.

Das obige ist der detaillierte Inhalt vonWie verwende ich MySQLs ON DUPLICATE KEY UPDATE für mehrere Zeilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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