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

标签 sql sqlite

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

select * from game where id = 1

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

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

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

最佳答案

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

SELECT * FROM game WHERE id = 1 LIMIT 1;

关于sql - 在 sqlite 查询中的第一个匹配项处停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27752132/

相关文章:

mysql - 如何在 Eloquent Query Builder (Laravel 4) 中按 "SUM"排序

java - SQL插入新创建的列,数据放置在前一列的最后一行之后

java - 确保 Android 应用程序在单个进程中运行

java.sql.SQLException : statement is not executing

python - 始终运行多个进程/线程,访问 sqlite3 数据库直到满足条件

mysql - Django Web 应用程序的数据库加密,无需在服务器上存储 key

php - SQL JOIN - 需要返回一个产品 ID,但返回其所有变体(例如尺寸、颜色)

mysql - 保留 mySQL 自动递增的 ID?

php - 特殊条件的 SQL 查询不起作用

ios - 如何在Flutter中使用sqflite插入特殊字符?