如何通过Sql Query获取Sqlite中表的第一行/第一行

Oma*_*ayr 80 sql sqlite

我需要在Sqlite数据库中获取表的第一行/第一行.

但我的程序为我正在使用的查询抛出一个SQLException"Sqlite语法错误:'1'附近的语法错误":

SELECT TOP 1 * 
FROM SAMPLE_TABLE
Run Code Online (Sandbox Code Playgroud)

我猜这是一种特别针对MS SQL SERVER和MS ACCESS的语法.现在我正在使用.

SELECT *
FROM SAMPLE_TABLE
LIMIT 1
Run Code Online (Sandbox Code Playgroud)

这个问题的最佳解决方案是什么?

小智 127

使用以下查询:

SELECT * FROM SAMPLE_TABLE ORDER BY ROWID ASC LIMIT 1
Run Code Online (Sandbox Code Playgroud)

注意:此处详细介绍了 Sqlite的行id引用


Jor*_*mer 26

LIMIT 1是你想要的.请记住,无论顺序如何,都会返回结果集中的第一条记录(除非您order在外部查询中指定了一个子句).

  • `LIMIT 1` 执行完整查询,然后丢弃不需要的结果。有几个关于它和`COUNT(*)`的邮件列表讨论。这与使用“TOP 1”查找第一条匹配记录不同。一旦找到第一条记录,查询就可以停止并返回结果。 (2认同)