広告

【MySQL】LIMIT句の使い方。データ取得の上限を指定する方法

2019年9月14日

MySQLでLIMIT句を使ってデータ取得の上限を指定する方法を記しています。

LIMIT句を使ってデータ取得の上限を指定する方法のGIF

MySQL LIMIT句の使い方・記述方法

取得数を指定する↓

SELECT * FROM テーブル名 LIMIT 取得数;

開始行と取得数を指定する↓

SELECT * FROM テーブル名 LIMIT 開始位置,取得数;

カラムを指定して取得数を指定する↓

SELECT 列名 FROM テーブル名 LIMIT 取得数;

カラムを指定して開始行と取得数を指定する↓

SELECT 列名 FROM テーブル名 LIMIT 開始行,取得数;

複数のカラムを指定して開始行と取得数を指定する↓

SELECT 列名,列名n... FROM テーブル名 LIMIT 開始行,取得数;

LIMITで上限を指定してデータを取得する例

先の記述方法を使って、LIMIT句を使ったデータの取得を行ってみます。

  1. 取得数を指定する
  2. 開始行と取得数を指定する
  3. カラムを指定して取得数を指定する
  4. カラムを指定して開始行と取得数を指定する
  5. 複数のカラムを指定して開始行と取得数を指定する

例として、以下「PARTS」テーブルを使ってレコードの取得数を指定していきます。

LIMITで操作する対象のテーブルPARTS

「PARTS」テーブル作成に挿入したデータ↓

INSERT INTO PARTS SET parts_id=1, parts_name='電解コンデンサ',COUNT=10;
INSERT INTO PARTS SET parts_id=2, parts_name='チップ抵抗',COUNT=400;
INSERT INTO PARTS SET parts_id=3, parts_name='トランジスタ',COUNT=40;
INSERT INTO PARTS SET parts_id=4, parts_name='レギュレーター',COUNT=10;
INSERT INTO PARTS SET parts_id=5, parts_name='LED',COUNT=34;
INSERT INTO PARTS SET parts_id=6, parts_name='スイッチ',COUNT=4;
INSERT INTO PARTS SET parts_id=7, parts_name='コネクタ',COUNT=40;
INSERT INTO PARTS SET parts_id=3, parts_name='チップ抵抗',COUNT=300;
INSERT INTO PARTS SET parts_id=4, parts_name='LED',COUNT=600;

1. レコードの取得数を指定する例

取得数を2として実行したSQL文↓

SELECT *FROM PARTS LIMIT 2;

上から2つのレコードが取得できました↓

上から2つのレコードが取得できたイメージ

2. 開始行と取得数を指定する例

レコードを取得開始行と取得数を指定

SELECT *FROM PARTS LIMIT 3,4;

上から3行目以降の開始行4行目から4つのデータが取得されました↓

上から3行目以降の開始行4行目から4つのデータが取得されたイメージ

3. カラムを指定して取得数を指定する例

カラムparts_name指定して5つデータを取得するSQL文↓

SELECT parts_name FROM PARTS LIMIT 5;

実行するとparts_name列のデータ5つを取得できています↓

parts_name列のデータ5つが取得されたイメージ

4. カラムを指定して開始行と取得数を指定する例

カラムparts_nameを指定して3行目以降から3つのデータを取得するSQL文↓

SELECT parts_name FROM PARTS LIMIT 3,3;

PARTSのテーブルから4行目から3つ分のデータが取得できました↓

4行目から3つ分のデータが取得できた

5. 複数のカラムを指定して開始行と取得数を指定する例

カラムidとparts_nameの開始行と取得数を指定してデータ取得するSQL文↓

SELECT id,parts_name FROM PARTS LIMIT 3,5;

idとparts_nameとCOUNTのレコードのみ、5つ取得できました↓

idとparts_nameとCOUNTのレコードのみ5つ取得できた

idあったほうが、どこからデータ取得が始まっているのか確認しやすいですね。

OYAKUN
OYAKUN
複数の列を指定したほうが周辺情報が目に入るので、上限を決めても結果として見やすいかもです。

まとめ

MySQLのLIMIT句を使ってレコードの上限数を決めて、データを取得する方法でした。

たしかに何万行とかあるテーブル、常時必要なレコードは限られてますからね。

LIMIT句を使った複雑な操作をしてないこともありますが、意外と直感的に使えそうで助かります(泣)

OYAKUN
OYAKUN
次回はここまで作成したデータベースが無くならないように、バックアップの方法について紹介します!
次回記事
MySQL-WHERE-AND-OR
【MySQL】WHERE・AND・ORを使ったデータ検索の方法(phpMyAdmin)

MySQLでWHERE句とANDを使って、データを検索する方法を簡単に記してます。 補足 DISTINCTを使った重複値 ...

続きを見る

関連記事:【MySQL】WHERE・AND・ORを使ったデータ検索の方法(phpMyAdmin)
関連記事:【MySQL】DISTINCTで重複したデータを除外した結果を取得する方法
関連記事:【MySQL】LEFT JOINとRIGHT JOINを使って全てのデータを表示する