批量更新、插入語句

更新單個記錄

UPDATE `table_name` SET `field1` = 'value1' WHERE `field2` = 'value2'

更新多個記錄的同一個字段爲同一個值

UPDATE `table_name` SET `field1` = 'value1' WHERE `field2` IN ('value2', 'value3')

更新多個記錄的同一個字段爲不一樣的值

mysql 並無提供直接的方法來實現批量更新,可是能夠用點小技巧來實現:html

UPDATE `table_name` SET
    `field1` = CASE `id`
        WHEN 1 THEN 'value1'
        WHEN 2 THEN 'value2'
    END
WHERE `id` IN (1,2,3);

更新多個記錄的多一個字段爲不一樣的值

若是更新多個字段的話,在上面的基礎上修改一下就能夠了:mysql

UPDATE `table_name` SET
    `field1` = CASE `id`
        WHEN 1 THEN 'value1'
        WHEN 2 THEN 'value2'
    END,
    `field2` = CASE `id`
        WHEN 1 THEN 'value3'
        WHEN 2 THEN 'value4'
    END,
WHERE `id` IN (1,2,3);

參考:sql

PS:我的博客-批量更新、插入語句code

相關文章
相關標籤/搜索