本記事ではSQLのWHERE句について解説していきます。
前回はSELECT句を使うことで、特定のカラムのデータのみを取得しました。
今回はWHERE句を使って、特定のレコードのデータのみを取得していきます。
WHERE句はSQLの基本となるものなので、使い方をしっかり覚えましょう。
SQLのWHERE句とは?
WHERE句とは、特定のレコードのデータを取得するのに使うものです。
SELECT文だけでは、指定したカラムのレコードが全て表示されてしまいます。
しかし、WHERE句を使うことで、どのレコードを表示するかも指定できるのです。
SQLのWHERE句の使い方
それではSQLのWHERE句の使い方をみていきましょう。
今回も前回の記事同様、以下の表を使って学習を行います。
id | name | age | gender | TestScore | birthday |
1 | 佐藤 | 12 | 男 | 89 | 2000/05/09 |
2 | 鈴木 | 9 | 男 | 64 | 1997/04/09 |
3 | 高橋 | 8 | 女 | 90 | 1996/03/11 |
4 | 田中 | 10 | 男 | 45 | 1998/04/05 |
5 | 伊藤 | 11 | 女 | 25 | 1999/01/13 |
6 | 渡辺 | 8 | 女 | 50 | 1996/02/14 |
7 | 山本 | 11 | 男 | 55 | 1999/03/30 |
8 | 中村 | 12 | 男 | 100 | 2000/06/01 |
9 | 小林 | 10 | 女 | 99 | 1998/07/28 |
10 | 加藤 | 10 | 女 | 14 | 1998/08/25 |
こちらのテーブルをまだ作っていない方は、【SQL入門編1】初心者必見!SQLのクエリの書き方を学ぼうにあるクエリをコピーして作成してくださいね。
それでは、以下の項目に従ってWHERE句について解説していきます。
- WHERE句で特定のレコードを取得する
- WEHRE句で比較演算子を使う
WHERE句で特定のレコードを取得する
WHERE句で特定のレコードを取得する方法を解説します。
今回は「age」が「12」であるレコードのみを取得してみましょう。
○コード例
SELECT * FROM TEST.Student WHERE age=12;
○実行結果
上記のコードではSELECT文を使って、全てのカラムを取得しています。
そして、WHERE句を使って、「age=12」のデータのみを絞り込んでいますね。
このようにWHEREの後に「{カラム名}={データ}」と記述することで、カラムにそのデータが入っている場合のみ、取得することが可能です。
これがWHERE句の基本的な使い方となります。
つづいて、「gender」が「女」であるレコードのみを取得してみましょう。
○コード例
SELECT * FROM TEST.Student WHERE gender="女";
○実行結果
WHERE句の後に「gender=”女”」と記述することで、「gender」が「女」であるレコードのみを取得しています。
やり方は先程と変わりませんが、「””」で括っていることに注目してください。
先程はデータが数値でしたが、今回は文字列です。
文字列でレコードを絞り込む場合は、「””」が必要になります。
SQLのクエリでは基本的に、文字列には「””」を付ける必要があるので、気をつけましょう。
WEHRE句で比較演算子を使う
今度はWHERE句で比較演算子を使うやり方についてみていきましょう。
比較演算子とは「<」「<=」「>」「>=」といった記号のことです。
それぞれ次のような意味を持っています。
- <:~より小さい
- <=:~以下
- >:~より大きい
- >=:~以上
これらの比較演算子をWHERE句で使うことで、たとえば「データが10より大きい場合のみ取得する」といったことが、できるようになります。
例をみていきましょう。
○コード例
SELECT * FROM TEST.Student WHERE age>10;
○実行結果
上記のコードでは、WHERE句を使って、「age」が「10より大きい」の場合のみ取得しています。
このように、WHERE句では「=」だけではなく、比較演算子も使うことが可能です。
もう1つ例をみていきましょう。
○コード例
SELECT * FROM TEST.Student WHERE TestScore<=50;
○実行結果
今度はWHERE句を使って、「TestScore」が「50以下」の場合のみ取得しています。
「<」は「~より小さい」という意味ですが、「<=」は「~以下」という意味なので、TestScoreの50のデータも含まれる点は注意です。
まとめ
本記事ではSQLのWHERE句について解説しました。
WHERE句を使うことで、レコードを絞り込むことが可能です。
また、WHERE句では比較演算子も使うことができることを覚えておきましょう。
次回はSQLのLIKE演算子について解説します。