fc2ブログ

サラリーマンのすらすらIT日記

IT関連を中心とした日々を綴ります。
2012/09/28

SQLiteのSELECT文のLIMIT,OFFSET指定

SQLiteでLIMITとOFFSETを指定したSELECT文を実行しようとすると、何度かエラーになりました。「SQLiteが認識できるクエリー言語」というサイトを見ると、原因がわかりました。指定順序が問題でした。



SQLiteの場合、

SELECT field1, field2 FROM table WHERE field1 = 'hoge' ORDER BY id LIMIT 10 OFFSET 5

のようにLIMITの後にOFFSETを書くのが正しい。ちなみにPostgreSQLでは(私はもっぱらVer8.2だが)LIMIT,OFFSETの順序はどちらが先でもよい。

変り種はFirebird 1.5(最近のバージョンはほとんど知りません)。LIMIT,OFFSETの代わりに、それぞれFIRST,SKIPと書くのも変わっていますが、記述位置まで他とは違い、

SELECT FIRST 10 SKIP 5 field1, field2 FROM table WHERE field1 = 'hoge' ORDER BY id

とSELECTの直後に書きます。末尾ではダメ。またFIRST,SKIPはこの順でないとダメ。変わったところが多いDBです。

スポンサーサイト



コメント

コメントの投稿

  • URL
  • コメント
  • パスワード
  • 秘密
  • 管理者にだけ表示を許可する

トラックバック

トラックバックURL:http://sookibizviz.blog81.fc2.com/tb.php/1332-3a0853a9

■  カレンダー

02 | 2023/03 | 04
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 -

■  プロフィール

sookibizviz

Author:sookibizviz
仕事の内容やソフトの紹介を交えながら、日々の悪戦苦闘を綴っていきます。

■  最新記事

■  最新コメント

■  最新トラックバック

■  月別アーカイブ

■  カテゴリ

未分類 (64)
BizViz (24)
IT (1119)
計量 (76)
環境 (26)
数学 (181)
ニュース (46)
本 (187)
音楽 (113)
囲碁 (5)
将棋 (26)
ブログ (14)
日記 (19)

■  FC2カウンター

■  検索フォーム

■  RSSリンクの表示

■  QRコード

QRコード