If you mention ON DUPLICATE KEY UPDATE when a row is inserted that is causing a duplicate value in a UNIQUE index or PRIMARY KEY then MySQL performs an UPDATE of the old row.
Suppose, in a table there are three columns i.e. a, b, c.
If column ‘a’ is declared as UNIQUE and contains the value 1 then the following two statements are similar effect:
INSERT INTO tbl_name (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c = c+1;
UPDATE tbl_name SET c = c+1 WHERE a = 1;
A table containing an AUTO_INCREMENT column and INSERT … ON DUPLICATE KEY UPDATE inserts or updates a row then, the LAST_INSERT_ID() function returns the AUTO_INCREMENT value.
Read Also: Update from one table to another with condition in MySQL
The ON DUPLICATE KEY UPDATE clause may contain multiple column assignments i.e. separated by commas.
The DELAYED option is ignored while you are using ON DUPLICATE KEY UPDATE.
The coronavirus outbreak has drastically changed the way we live our lives. Yes, that's absolutely…
Sales and marketing teams help attract, convert, and retain customers to ensure an organization’s long-term…
Are you an owner of a small business who’s trying to come up with ways…
Introduction When patients bring me their lab reports, the confusion is almost always the same.…
Are you excited about remodeling your house after a long time? Perhaps if you're planning…
The practice of yoga teaches us to be present, patient and mindful of our decisions.…