我想更新表中从 1001 到下一个 1000 的行。
我尝试了以下查询:
UPDATE `oltp_db`.`users` SET p_id = 3 LIMIT 1001, 1000
此外,我尝试更新的行对于数据类型为 INTEGER 的列 p_id 具有 Null 值。因此,我什至无法使用以下查询进行更新:
UPDATE `oltp_db`.`users` SET p_id = 3 WHERE p_id = null
最佳答案
如果你想在 MySQL 中使用 limit 更新多行,你可以使用这个构造:
UPDATE table_name SET name='test'
WHERE id IN (
SELECT id FROM (
SELECT id FROM table_name
ORDER BY id ASC
LIMIT 0, 10
) tmp
)
https://stackoverflow.com/questions/6289729/