SQLのSELECT文でn件目からm件目までのレコードを取得する方法(Oracle、SQL Server、MySQL、PostgreSQL)

SQLのSELECT文を使用して先頭からn件のレコードを取得するだけでなく、n件目からm件目までのレコードを取得することも可能です。

Oracle8i R8.1.5 以降
Oracle8i R8.1.5 以降では、Table1のField1の昇順に11件目から15件目までの結果セットを取得する場合は以下のSQL文で取得できます。

SELECT *
FROM (SELECT *, ROWNUM SEQNUM
FROM (SELECT * FROM Table1 ORDER BY Field1) A) B
WHERE SEQNUM > 10 AND SEQNUM <= 15;

Microsoft SQL Server 7.0 以降
Microsoft SQL Server 7.0 以降ではTOPを使用して、以下のSQL文で Table1の11件目から15件目までの結果セットを取得できます。

SELECT TOP 5 * FROM Table1 A
WHERE NOT EXISTS
(SELECT * FROM (SELECT TOP 10 * FROM Table1) AS B
WHERE A.Field1 = B.Field1)
ORDER BY A.Field1

その他のRDB
また、上記以外のRDBでも以下のSQL文で同様の結果が得られます。

SELECT DISTINCT COUNT(*), A.Field1, A.Field2, A.Field3
FROM Table1 A, Table1 B
WHERE (A.Field1 >= B.Field1)
GROUP BY A.Field1, A.Field2, A.Field3
HAVING COUNT(*) > 10 AND COUNT(*) <= 15


[149] Posted by kagahiro at 2005/03/21 16:41:09
クローズ | 1 point | Link (11) | Trackback (1) | Comment (0)

キーワード

SQL n件 Oracle 

ジャパンのホームページ

追記

MySQL、PostgreSQLでn件目からm件目までのレコードを取得する方法
例えば、31件目から40件までのレコードを取得したい場合、それぞれ以下のようになります。

MySQLの場合

SELECT * FROM Table1
ORDER BY Field1
LIMIT 30, 10;

PostgreSQLの場合

SELECT * FROM Table1
ORDER BY Field1
OFFSET 30 LIMIT 10;
Posted by kagahiro at 2010/06/29 17:53:40

SQLのSELECT文でn件目からm件目までのレコードを取得する方法(Oracle、SQL Server、MySQL、PostgreSQL) 関連リンク

SQLで先頭から上位10件のレコードを取得する方法(Oracle、SQL Server、MySQL、PostgreSQL)
「先頭からn件のレコード(結果セット)だけ取得する方法が知りたい。」というのは、データベース関連のメーリングなどで以前からよくある質問ですが、RDBの種類やバージョン...
SQL
Structured Query Language(構造化問合せ言語) のことで、データベースの定義や操作などを実現するためのデータベース言語の一つ...
SQL 書籍
リレーショナルデータベースの標準言語であるSQLに関する入門書やリファレンス、プログラミング解説書などの書籍。SQLプログラミング入門―12のレッスンで学ぶリレーショナル...
Oracle(オラクル)
Oracle(オラクル)とは、米Oracle社が開発・販売している高機能データベース製品のことで、UNIX、Linux、Windowsなど各種OS向けの製品が存在する。主に企業の業務システム...
Oracle(オラクル) 書籍
Oracle(オラクル)に関する書籍。Oracleの入門書、データベースのアーキテクチャから運用・管理、データベース設計、PL/SQL、プログラミングなど。Oracle DB ユーザーズガイド...
MySQL
MySQLとは、フィンランドのMichael Widenius氏よって開発された、オープンソースライセンスで配布されている高速性に重点を絞った軽快なRDBMSで、欧米などで広く普及している。...
MySQL 書籍
オープンソースの高速・軽量データベース「MySQL」に関する書籍。入門書や運用管理についての詳細な解説書、リファレンスなど。MySQL 徹底入門 第2版オープンソースのデータベース...
[Perl]DBI経由でMySQLに接続して、SELECT文でデータを取得するサンプルプログラム
PerlのプログラムからDBI経由でMySQLに接続し、SELECT文でデータを取得する処理のサンプルプログラムです。あらかじめphpMyAdminを使用してMySQLにテータベース「testdb」を作成し、以下のSQL...
PostgreSQL
PostgreSQLとは、オープンソースの本格的なリレーショナルデータベースで、問い合わせ言語としてSQLが使えるほか、トランザクション、行レベルロック、副問い合わせなどの重要な機能も...
SQL Server
SQL Serverとは、Microsoft社がWindows Server用に開発・販売しているRDBMSのこと。Microsoft SQL Server ホームマイクソフトのSQL Server公式サイト。製品情報、技術情報、サービスパック・評価版...
SQLiteのSELECT文でn件目~m件目までのデータを取得する
SQLiteのSELECT文でn件目〜m件目までのデータを取得する場合も、上位n件の場合と同様にLIMIT句を使用しますが、開始位置の指定が必要になります。データは開始位置で指定した値の次のレコードから取得されます。構文...

SQLのSELECT文でn件目からm件目までのレコードを取得する方法(Oracle、SQL Server、MySQL、PostgreSQL) トラックバック

トラックバックURL :

Linked from ネット掲示板 - ゴクBBS : SQL質問スレ at 2016/09/29 13:57:53
このスレでは「こういうことをやりたいんだけどSQLでどう書くの?」「こういうSQLを書いたんだけどうまく動きません><」といった質問を受け付けています。SQLはISOによって標準化されていますが、標準を100%実装し...

SQLのSELECT文でn件目からm件目までのレコードを取得する方法(Oracle、SQL Server、MySQL、PostgreSQL)へのコメント


< 前の投稿      次の投稿 >

アクセスランキング

今日のアクセスランキング TOP 10

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (79 PV)
  2. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (10 PV)
  3. 日銀マイナス金利解除、17年ぶりの利上げ ドル円(USDJPY)は大きく上昇 (9 PV)
  4. Google News (グーグルニュース)日本版 (9 PV)
  5. SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (8 PV)
  6. 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (6 PV)
  7. 裁量トレードを半自動化する無料のMT5向け裁量トレード支援ツール(EA)「PositionKeeper MT5」 #FX (4 PV)
  8. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (3 PV)
  9. [Perl]UTF-8でエンコードされた英数字の全角半角変換を行うコード (3 PV)
  10. 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」をバージョンアップ(Ver 2.04) (3 PV)

今月のアクセスランキング TOP 10

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (1466 PV)
  2. 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (251 PV)
  3. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (233 PV)
  4. [FX]高値更新・安値更新でエントリー、MT4向け無料スキャルピングEA「1Scalper」#システムトレード (221 PV)
  5. 選んではいけないEA #間違いだらけのEA選び (211 PV)
  6. MT4向け無料ヘッジ(両建て)ツール(EA)「STOPPER FREE」 #自動売買 #FX (144 PV)
  7. Google News (グーグルニュース)日本版 (137 PV)
  8. YouTube(ユーチューブ)日本版 - 動画共有、ライブ配信 (135 PV)
  9. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (105 PV)
  10. SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (74 PV)

アクセス統計

ディレクトリ

関連サイト