无法使用更新和限制工作进行 mysql 查询

Cant make a mysql query with update and limit work

我正在编写需要使用此代码的脚本:

UPDATE articles 
  SET name="Alianza oro rosa y diamante ", 
      desc="Alianza oro rosa y diamante " 
LIMIT 0, 1 

我应该怎么做才能让它发挥作用?

据我所知,limit 子句只接受一个数字,而不是 select 语句中的 x, y 格式。

UPDATE articles 
  SET name="Alianza oro rosa y diamante ", 
      desc="Alianza oro rosa y diamante " 
LIMIT 1

如果你省略 0,:

UPDATE articles 
  SET name        = "Alianza oro rosa y diamante ", 
      description = "Alianza oro rosa y diamante " 
LIMIT 1;

根据 documentation,您不能在 LIMIT 子句中添加偏移量。不幸的是 LIMIT 在子查询中不起作用。

检查this Fiddle

p.s.:潜在解决方案(根据评论):

UPDATE articles 
  SET donttouch = false -- reset marker
WHERE donttouch = true; 

UPDATE articles 
  SET donttouch = true 
LIMIT 1; -- offset

UPDATE articles 
   SET name        = "Alianza oro rosa y diamante ", 
       description = "Alianza oro rosa y diamante " 
 WHERE donttouch = false
 LIMIT 1; -- number of entries

虽然这使用了附加列 (Fiddle)。