如何选择MySQL表中的最后一行?

我正在插入数据,我需要从前一行检索一个列值。

表中有一个auto_increment。


当前回答

SELECT * FROM adds where id=(select max(id) from adds);

此查询用于获取表中的最后一条记录。

其他回答

简单地使用:PDO::lastInsertId

http://php.net/manual/en/pdo.lastinsertid.php

你可以在LIMIT命令中使用OFFSET:

SELECT * FROM aTable LIMIT 1 OFFSET 99

如果您的表有100行,则返回最后一行而不依赖于主键

几乎每个数据库表都有一个auto_increment列(通常是id)

如果你想要表中的最后一行,

SELECT columns FROM table ORDER BY id DESC LIMIT 1;

OR

你可以将两个查询组合成一个查询,就像这样:

SELECT columns FROM table WHERE id=(SELECT MAX(id) FROM table);

是的,这里有一个auto_increment

如果您想要的是表中所有行的最后一行,那么现在正是MAX(id)是正确答案的时候!一种:

SELECT fields FROM table ORDER BY id DESC LIMIT 1;

在一个查询中没有ID:

SELECT * FROM table_name LIMIT 1 OFFSET (SELECT COUNT(*) - 1 FROM table_name)