How to bulk update mysql data with one query?

后端 未结 4 980
半阙折子戏
半阙折子戏 2020-12-01 05:21
$query = mysql_query(\"UPDATE a SET fruit = \'**apple**\' WHERE id = \'**1**\' \");
$query2 = mysql_query(\"UPDATE a SET fruit = \'**orange**\' WHERE id = \'**2**\'          


        
4条回答
  •  旧巷少年郎
    2020-12-01 05:44

    Based on the warning message

    'VALUES function' is deprecated and will be removed in a future release. Please use an alias (INSERT INTO ... VALUES (...) AS alias) and replace VALUES(col) in the ON DUPLICATE KEY UPDATE clause with alias.col instead
    

    One may consider a slight modification of Yaroslav's solution like so:

    INSERT into `table` (id,fruit)
    VALUES (1,'apple'), (2,'orange'), (3,'peach') as tb
    ON DUPLICATE KEY UPDATE fruit = tb.fruit;
    

    It does just the same thing but mutes the warning message.

提交回复
热议问题