MySQLのSELECTで取得範囲を指定

MySQL > MySQLのSELECTで取得範囲を指定

MySQLのSELECTによるデータ取得件数における設定方法についてです。

SELECT文によるデータ取得は全データが対象となりますが、LIMIT句を使い条件指定することで任意の取得件数に絞りこんだうえでデータを取得することができます。

SQL文は下記になります。

SELECT カラム名 FROM テーブル名 LIMIT 取得件数;

下記はデータを10件だけ取得する例です。

SELECT カラム名 FROM テーブル名 LIMIT 10;

さらにOFFSET句を使うことで取得範囲を指定したうえでデータを取得することもできます。

OFFSET句を使用するSQL文は以下になります。

SELECT カラム名 FROM テーブル名 LIMIT 取得件数 OFFSET 開始位置;

下記は1件目から10件目までのデータを取得する例です。

SELECT カラム名 FROM テーブル名 LIMIT 10 OFFSET 0;

OFFSET句で指定した数値の次のデータから取得開始となる点に注意してください。

直感的にわかりやすい下記もおすすめです。

SELECT カラム名 FROM テーブル名 LIMIT 開始位置,取得件数;

下記は11件目から100件目までを取得する例です。

SELECT カラム名 FROM テーブル名 LIMIT 10,100;

「1件目から10件目までのデータを除き、それ以降、100件目までのデータを取得する」と捉えると理解しやすいかと思います。