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;
我正在使用这个:
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;