在 sqlite 查询中的第一个匹配项处停止

Stop at first match in a sqlite query

我有一个 4GB 和 40 万行的 sqlite3 数据库。 id列是从1开始的连续数字,如果我查询如下

select * from game where id = 1

打印第一个匹配项后,查询将继续,直到达到 400k 行,因此需要几秒钟才能完成查询。

如何让查询在第一次匹配时停止?

或者由于 id 和 rowcount 相同,我如何直接转到特定行?

只需在您的查询中添加 LIMIT 1

SELECT * FROM game WHERE id = 1 LIMIT 1;