我需要更新“myTable”中第 5 到 10 行的“myColumn”列。我认为我可以执行以下操作,但显然它给了我一个语法错误:
UPDATE myTable SET myColumn = 'mamal' LIMIT 5,10;
谢谢
最佳答案
SQL 表表示无序 集。如果您有主键,则可以使用它进行排序。
MySQL 确实允许限制,但不允许偏移,因此您可以更新前五行:
UPDATE myTable
SET myColumn = 'mamal'
ORDER BY id
LIMIT 5;
但没有偏移量。
你可以通过 JOIN
来解决这个问题:
UPDATE mytable t JOIN
(SELECT id
FROM mytable tt
ORDER BY id
LIMIT 5, 10
) tt
ON tt.id = t.id
SET myColumn = 'mamal';
关于mysql - 如何更新一系列行号的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48313360/