支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


はじめに

「SELECT」はデータベースからデータを抽出する際、「検索」を行う為のクエリです。 SELECT文では指定した列名(SELECT句)、指定したテーブル(FROM句)に対して、検索結果の表示を行います。 以下は【MySQL】SELECTの基本構文とサンプルコードになります。

【MySQL】SELECTの基本構文

1. SELECT 列名 FROM テーブル名;

テーブル任意の列だけを抜き出したい場合はカラム名を指定して、テーブルから必要なデータを抽出するのがSELECTの基本です。 なお、指定の部分にアスタリスク(*)を使用すると「すべて」の意味になります。

【MySQL】SELECTのサンプルコード(アスタリスク(*)を使用した場合)

1. SELECT * FROM user;

【MySQL】SELECTのサンプルコードの実行結果

--------------------------------------------------------------------
 id      user     gender  savings
--------------------------------------------------------------------
 A001   田中 太郎    男性   50
 A002   鈴木 京子    女性   100
 A003   小林 拓哉    男性   220
 A004   上田 次郎    男性   3000
 B001   酒井 直子    女性   700

【MySQL】SELECTのサンプルコード(特定の列を指定した場合)

1. SELECT id,user FROM user;

【MySQL】SELECTのサンプルコードの実行結果

-------------------------------------
 id      user
-------------------------------------
 A001   田中 太郎
 A002   鈴木 京子
 A003   小林 拓哉
 A004   上田 次郎
 B001   酒井 直子

【MySQL】SELECTで関数の利用

SELECT文は関数を利用することが可能です。 関数とはプログラミング言語で特定の処理をした出力結果を返すものです。 関数には値を入力する引数(ひきすう)、出力結果を返り値・戻り値と呼びます。
今回はレコードから平均を計算するAVG関数を使用します。 savingsカラムの各データの平均値を計算して、その結果を表示しています。AVG()が関数、salesが引数、814が戻り値です。

【MySQL】SELECTの関数を使用したサンプルコード

1. SELECT AVG(savings) FROM user;

【MySQL】SELECTのサンプルコードの実行結果

--------------------------
 savings
-------------------------
 814

【MySQL】WHERE句を使用して条件を絞る

「WHERE句」は比較演算子を使用した条件を利用することで、条件に合致したレコードを抽出することが可能となります。 演算子とは計算(演算)に使う記号のことで、「+」、「-」などの算術演算子、「and」,「or」といった論理演算子などがあります。

【MySQL】WHERE句を使用したサンプルコード

1. SELECT * FROM user WHERE gender = 男性;

【MySQL】WHERE句のサンプルコードの実行結果

--------------------------------------------------------------------
 id      user     gender  savings
--------------------------------------------------------------------
 A001   田中 太郎    男性   50
 A003   小林 拓哉    男性   220
 A004   上田 次郎    男性   3000

【MySQL】WHERE句でANDを使用したサンプルコード

以下は「savings」が100以上かつ、1000未満を指定して抽出結果になります。 例えば複数のカラムをまたいだ条件指定や条件を複数つなげたい場合、論理演算子が必須となります。

1. SELECT * FROM user WHERE savings >=100 AND sales < 1000;

【MySQL】WHERE句でANDを使用したサンプルコードの実行結果

--------------------------------------------------------------------
 id      user     gender  savings
--------------------------------------------------------------------
 A002   鈴木 京子    女性   100
 A003   小林 拓哉    男性   220
 B001   酒井 直子    女性   700

【MySQL】WHERE句でORを使用したサンプルコード

以下は「savings」が500以上「または」「gender」が女性だった場合表示します。

1. SELECT * FROM user WHERE savings >=500 OR gender = 女性;

【MySQL】WHERE句でORを使用したサンプルコードの実行結果

--------------------------------------------------------------------
 id      user     gender  savings
--------------------------------------------------------------------
 A002   鈴木 京子    女性   100
 A004   上田 次郎    男性   3000
 B001   酒井 直子    女性   700

まとめ

本記事では「SELECT」文での色々な用い方についてご紹介いたしました。 「SELECT」はSQLでとても重要なので必ず使えるようにしないといけないでしょう。