[英]UPDATE last 10 records of PHP Mysql table
这似乎是一个简单的问题,但不幸的是我找不到例子。
假设我想在php中使用UPDATE语句来更新数据库“users”的表“users”的最后10条记录。 它的代码是什么? 我的意思是INSERT句子有一个
使用LIMIT等答案,但UPDATE没有。
在此先感谢您的帮助。
pd:例如,我想在最后10条记录中用“michael”字更新“Firstname”字段。
尝试这个
UPDATE table SET notes="hi"
ORDER BY id DESC
LIMIT 10
根据Mysql文档,如果有一个唯一的列,请按DESC排序,并使用LIMIT 10选择最后10条记录。
UPDATE [LOW_PRIORITY] [IGNORE] table_reference
SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...
[WHERE where_condition]
[ORDER BY ...]
[LIMIT row_count]
你可以做这样的事情。
方法1
UPDATE table_name SET column_name='value' WHERE id IN (SELECT id FROM table_name ORDER BY id desc LIMIT 0, 10);
方法2
如果你看看文档
UPDATE [LOW_PRIORITY] [IGNORE] table_reference
SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...
[WHERE where_condition]
[ORDER BY ...]
[LIMIT row_count]
这意味着下面也适合你
UPDATE table_name SET column_name='value' ORDER BY id desc LIMIT 10;
尝试其中一个适合您的,如果您有任何问题,请告诉我。
您没有向表模式提供任何输入,但这里有一些可行的方法:
UPDATE users SET firstname='michael' WHERE id >= (SELECT MAX(id)-10 FROM users);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.