• ベストアンサー

AccessのSQL

AccessXPですが、最初から100レコードとかいうのでなくて 30番目から100レコードとか、途中のレコードがほしい場合、 どのように記述すればよろしいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

SELECT Top 100 * FROM (SELECT Top 130 * FROM テーブル名 ORDER BY ソートするフィールド名 ASC) AS T ORDER BY ソートするフィールド名 DESC; こんな感じで出来ませんか。

urourojp
質問者

お礼

ありがとうございました。 それで100個ずつ取得できました。 目的は大量にあるレコードを100個ずつ取得してページ を繰ろうとするものです。 ただ、最後に端数がでた場合も端数分にダブった分を 合わせて100個取得してしまいます。 この場合は、最初に端数分を計算しておいて、最後の ページに到達した場合は別処理で表示するという感じ になるのでしょうか?

その他の回答 (1)

  • ipsum11
  • ベストアンサー率21% (55/251)
回答No.2

全体のレコード数と1ページあたりの件数(100件)から、トータルのページ数と最終ページの件数がわかると思いますので、そのようにやればよいと思います。最終ページは別ロジックで処理してやりましょう。

urourojp
質問者

お礼

ありがとうございました、その方法でやってみます。

関連するQ&A