我在从数据库中查找最新数据时遇到问题。
当我select no from book
从 1,2,3 返回时。
但是当我这样做时,据说它应该返回值 3 这返回我 2。
SELECT no FROM book WHERE rowid =( SELECT MAX(rowid) FROM book)
奇怪的是,如果你从列表中删除所有数据,它也会让我回到最后一行,直到它有超过 2 个数据。有人可以帮助我吗?
看起来您的查询正在寻找 rowid 的最大值,而不是没有。
因此,试试这个:
SELECT MAX(no) FROM book;
您不应该max(no)
在子查询中使用吗?
SELECT no FROM book WHERE rowid =( SELECT MAX(no) FROM book)
RowID 是一个伪列,从 0 开始 -请参见此处。
Why not just SELECT MAX(no) FROM book
?
试试这个
select no from book where rowid = (select max(no) from book)