让我再解释一下。
我在sqlite中有一个看起来像这样的表:
table
------
id numeric primary key,
uuid text not null,
other_field text
现在id是标准的自动增量类型。此表可以随时添加和删除条目,因此如果再次使用曾经使用过一次的rowid,那就没问题了。我没有使用sqlite的'table full'功能。允许多个条目具有相同的uuid。我的想法是,我只对最后插入的条目感兴趣。
这提出了一个问题。我知道我可以打个电话 “从表中选择other_field,其中uuid =?order by rowid desc”
这没关系,但是如果rowid环绕怎么办?由rowid desc命令不会给我最新的条目。
我能想到的是添加一个像
这样的creation_time字段table
------
id numeric primary key,
uuid text not null,
other_field text
creation_time datetime
然后在创建时将datetime('now')放在该字段中。
select other_field from table where uuid=? order by creation_time desc
但这意味着添加额外的字段和更大的索引。是否有内置的方法来做到这一点?
答案 0 :(得分:0)
如果要选择最新的ID或RowID,请查看命令LIMIT。使用LIMIT,您只能返回1行。例如:
SELECT * from table ORDER BY id DESC LIMIT 1
使用此解决方案,您无需添加其他字段“ creation_time”。
希望对您有帮助:)