我正在尝试编写mysql语句,该语句从表中选择最后一个添加的值。由于表中的id列是一个自动递增的值,我发现最简单的方法是选择id值最高的行。
我想知道是否有人能帮我完成这件事?
类似这样的东西:
mysql_query("SELECT*FROM table WHERE id=max(id)"
MAX是一个聚合/组函数,不能像这个那样使用
试试这个
SELECT *
FROM blog
ORDER BY id DESC LIMIT 1;
或
SELECT *
FROM blog
where id=LAST_INSERT_ID();
或
SELECT *
FROM blog
WHERE (id = (SELECT MAX(id) FROM blog LIMIT 1))
您可以使用LAST_INSERT_ID()
查找最后插入的id。因此,您的查询可以是这样的:
SELECT *
FROM blog
where id=LAST_INSERT_ID();
要处理您的查询,您必须这样做:
SELECT *
FROM blog
WHERE id=(
SELECT max(id) FROM blog
)
在执行查询后写入:
$id = mysql_insert_id();
以获取最后插入的记录的id。