INSERT INTO .. ON DUPLICATE KEY UPDATE for multiple items

前端 未结 3 702
Happy的楠姐
Happy的楠姐 2020-12-07 10:33

I want to do something like this

INSERT INTO t (t.a, t.b, t.c) 
VALUES (\'key1\',\'key2\',\'value\') 
ON DUPLICATE KEY UPDATE 
t.c = \'value\';
INSERT INTO          


        
3条回答
  •  太阳男子
    2020-12-07 11:12

    Too low on rep for comment, but I wanted to add a slightly more complex syntax that was inspired by @ʞɔıu response. To update multiple fields on duplicate key:

    INSERT INTO t (t.a, t.b, t.c, t.d)
    VALUES ('key1','key2','value','valueb'), ('key1','key3','value2','value2b')
    ON DUPLICATE KEY UPDATE
    t.c = VALUES(t.c),
    t.d = VALUES(t.d)
    

    Hope that helps someone out there looking to perform bulk insert with multiple on duplicate key update. The syntax escaped me.

提交回复
热议问题