SQLクエリを介してSqliteのテーブルの最初/一番上の行を取得する方法


90

Sqliteデータベースのテーブルの最初/一番上の行をフェッチする必要があります。

しかし、私のプログラムは、使用しているクエリに対してSQLException "Sqlite Syntax Error:Syntax error near'1 '"をスローします。

SELECT TOP 1 * 
FROM SAMPLE_TABLE

私が推測するのは、特にMS SQLSERVERとMSACCESSの構文です。今使っています。

SELECT *
FROM SAMPLE_TABLE
LIMIT 1

この問題の最善の解決策は何ですか?


開発者は、テーブル内のレコードの物理的な順序に依存してはならないことに注意してください。これは危険な考えです。
Ruslan Zasukhin 2017年

回答:



28

LIMIT 1あなたが望むものです。これにより、順序に関係なく結果セットの最初のレコードが返されることに注意してください(order外部クエリで句を指定しない限り)。


1
LIMIT 1完全なクエリを実行してから、不要な結果を破棄します。それとについていくつかのメーリングリストの議論がありCOUNT(*)ます。これは、で最初に一致するレコードを見つけることとは異なりTOP 1ます。最初のレコードが見つかると、クエリを停止して結果を返すことができます。
JWW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.