TIL – MySQL ON DUPLICATE KEY UPDATE

// Start written by AI ChatGPT

The ON DUPLICATE KEY UPDATE statement in MySQL is used when you want to either insert a new row into a table or update the existing row if a duplicate key constraint is violated. In other words, it allows you to handle duplicates gracefully.

Here’s an example to illustrate its usage:

INSERT INTO your_table (column1, column2, column3)
VALUES (value1, value2, value3)
ON DUPLICATE KEY UPDATE
    column1 = value1_updated,
    column2 = value2_updated,
    column3 = value3_updated;

In the above example, if there is a duplicate key error when inserting the values into your_table, instead of failing with an error, the specified columns (column1, column2, column3) will be updated with the corresponding new values (value1_updated, value2_updated, value3_updated).

It’s important to note that for ON DUPLICATE KEY UPDATE to work, you need to have a unique key or primary key constraint defined on the table. Duplicate key errors are typically generated when you try to insert a row with a key value that already exists in the table.

Using ON DUPLICATE KEY UPDATE can be helpful in scenarios where you need to handle non-unique data gracefully and manage conflicts efficiently.

// End written by AI ChatGPT

Good reference links:

Leave a comment