Sqlite 获取最大 ID 不工作(?)

Sqlite get max id not working (?)

我正在使用这个:

SELECT * 
WHERE id=MAX(id) 
FROM history;

但是我的查询是空的。我也试过这个(这个有效):

SELECT MAX(id) AS max_id 
FROM history;

但显然我的查询只包含 max_id 键。第一个我做错了什么?

您需要为 MAX 添加另一层 select,如下所示:

SELECT * 
WHERE id=(SELECT MAX(id) from history)
FROM history;

更好的方法是按 id 降序排列,并将输出限制为单行:

SELECT *
FROM history
ORDER BY id DESC
LIMIT 1

SELECT 前 1 名 从历史 按 ID 排序

实际上,在 sqlite 中获取列最大值的最简单查询是:

select MAX(id) from table;