By Hibi
Post Time: 2006年9月24日 06:25
SQLで上位5つのレコードを表示する方法
Accessでレコードを表示する際、表示するレコード数が多いと各ハードウェアに負担がかかってしまうことがあります。
「見たいのは最初の10件だけなのにな」
なんてこともあるかと思います。
そんな時、SQLでIDを1〜10などと指定して絞り込む方法もあるのですが、もっと簡単な方法があります。SELECT文で
SQL:
-
SELECT TOP 10 table1.id, table1.name FROM table1;
と書くこと、上位10件だけを表示することができます。ポイントは「TOP 10」です。
この方法はAccessのみではなくSQL Serverでも使用することができます。(7.0以降)
また、WEBのなどでは11レコード目から15レコード目までを表示することはよくあります。PostgreSQLやMySQLではLIMIT,OFFSETなどで簡単に指定することはできますが、AccessやSQL Serverではさすがにこの機能は持っていません。
では、どうしたらいいかというとSQLを駆使することで解決できます。方法はいくつかあると思いますが、その方法を1つだけ書いておきます。
SQL:
-
SELECT TOP 5 table1.id, table1.name FROM table1
-
WHERE NOT EXISTS
-
(SELECT * FROM
-
(SELECT TOP 10 * FROM table1) AS exTable1
-
WHERE table1.id = exTable1.id)
-
);
-
ORDER BY table1.id
この方法で、11レコード目から15レコード目までを表示することができます。
一度お試しください。







TrackBack URL