0
我喜欢做这样的事情:Mysql的更新值
UPDATE articles
SET live = 1
WHERE aid=3
ORDER BY created DESC
LIMIT 1
最新的文章应该是活的。这在我的小CMS中经常需要。但是这个查询返回一个错误:
#1221 - Incorrect usage of UPDATE and ORDER BY
不允许在UPDATE查询中使用ORDER BY或LIMIT吗?
我一个子查询试了一下:
UPDATE articles
SET live=1
WHERE id= (SELECT id FROM articles WHERE aid=3 ORDER BY created DESC LIMIT 1)
但是,这是不允许的,太...你不能使用相同的表UPDATE和一个查询SELECT查询...
解决方案是什么?我不想创建TMP表,因为这需要经常进行。是PHP必备的解决方法吗?
您的第一个查询应该可以工作。我想你有一些JOIN。发布确切的查询不起作用,所以我们可以提供帮助。 –