Skip to content
Advertisement

Sqlite get max id not working (?)

Im using this:

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

But my query is empty. I have also tried this (This one works):

SELECT MAX(id) AS max_id 
FROM history;

But obviusly my query only contains the max_id key. What am I doing wrong with the first one?

Advertisement

Answer

You need to add another level of select for the MAX, like this:

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

A better approach would be to order by id in descending order, and limit the output to a single row:

SELECT *
FROM history
ORDER BY id DESC
LIMIT 1
5 People found this is helpful
Advertisement