「先頭の何件だけ取得したい」このような時に使うのがLIMIT句になります。OFFSET句を合わせて使う事で、途中の何行目から何件という指定もできます。LIMIT句が使えるデータベースは限られています。LIMIT句が使える代表的なデータベースとしては、PostgreSQL、MySql、SQLiteORACLEではROWNUMを使います。ServerではROW_NUMBER()を使います。ServerおよびAccessではTOP句が使えます。使用するテーブル定義は以下になります。全テーブル定義とテーブル自動作成VBAデータベースの正規化とマスタの作成で作成した全テーブル定義と、テーブル名変更と列追加(ALTERTABLE)とテーブル自動作成で作成したテーブル自動作成VBAを掲載しておきます。エクセルVBAでデータベースを扱うためのSQL入門です。前回までにテーブルを作成したり、削除したりできるようになりました。行数SELECT結果の先頭から指定の行数だけが取得されます。BYが指定されている場合は、ソート後に適用されます。行数SELECT結果の除外行数の次の行から指定した行数だけが取得されます。除外行数に10を指定した場合は、11行目から取得されます。BYが指定されている場合は、ソート後に適用されます。後者の場合は指定順に注意してください。OFFSET句を指定したほうが読みやすいと思いますので、OFFSET句を使ったほうが良いと思います。金額で降順に並べた時の最後の10件を取得する場合です。DESC昇順にして先頭10件を取得後に降順に並べ替え直しています。OFFSET句を使って書いてみましょう。10件の行位置計算→OFFSET句に指定さらに、WITH句(共通テーブル式)を使って書き直してみましょう。GR)大分すっきりしたのではないでしょうか。このくらいのサブクエリやWITHがすんなり読めて書ければ、大概の事は自由にSQLを書けるものと思います。サブクエリの練習をかねて、あえて題材にしてみました。LIMIT句、OFFSET句の最後にLIMIT句自体は特段に難しいことはありませんので、使う時に悩むようなことは無いでしょう。これを知らないと必要となった場面では大変困ってしまいますので、必ず覚えておきましょう。取得行数を限定するLIMIT句このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。取得行数を限定するLIMIT句このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。