如果需要批量更新几百上千行的话,update 就太低效了,这个时候可以使用一些批更新的命令。

mysql 提供了多种批量更新的方式,mysql 批量更新,那 Django 的 ORM 使用的是哪一种呢?

答案如下:

UPDATE
    `workingImdbMatchTask`
SET
    `task_json` = CASE
        WHEN (`workingImdbMatchTask`.`id` = 5) THEN 'asds'
        WHEN (`workingImdbMatchTask`.`id` = 8) THEN 'asds'
        WHEN (`workingImdbMatchTask`.`id` = 9) THEN 'asds'
        ELSE NULL
    END
WHERE
    `workingImdbMatchTask`.`id` IN (5, 8, 9);

universe_king
3.4k 声望680 粉丝