Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL SU AGGIORNAMENTO CHIAVE DUPLICATA per più righe inserite in una singola query

A partire da MySQL 8.0.19 puoi usare un alias per quella riga (vedi riferimento ).

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
    ...

Per le versioni precedenti, utilizza la parola chiave VALUES (vedi riferimento , deprecato con MySQL 8.0.20).

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