这是我的查询,不会中断-但也不起作用。谁能告诉我我在做什么错?
$sql_query="UPDATE requests
SET Playlisted=1,
ROWorder=(SELECT MAX(ROWorder) + 1)
WHERE IDrequests=".$_GET['Playlisted_id'];
最佳答案
您需要在子查询中进行汇总:
UPDATE requests r CROSS JOIN
(SELECT MAX(ROWorder) as maxro FROM requests) rr
SET Playlisted = 1,
ROWorder= maxrr + 1
WHERE IDrequests = ".$_GET['Playlisted_id'];
那应该解决语法问题。现在尚不清楚该代码应该做什么。通常,使用
insert
列在auto_increment
上处理这种类型的操作,但是您可能还有其他用例。关于mysql - 将“ROWorder”中的值设置为“ROWorder” +1中的最大值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43596033/