Developer

【SQL基礎】WHERE句とは
2020.11.30
Lv1

【SQL基礎】WHERE句とは

—–

WHERE句とは

SELECT文を使ってデータを取得する時に、取得するデータの条件を設定するためにWHERE句を使います。WHERE句を使う目的は、データベースに格納された大量のデータの中から検索対象のデータを絞り込むためにSELECT文と組み合わせたり、データの更新対象を指定するためにUPDATE文と組み合わせたり、データを削除するDELETE文などと合わせて使用します。

—–

WHERE句の基本構文

WHERE句の書式は以下の通りです。

SELECT * FROM テーブル名 WHERE カラム名=値;

※基本的な構文はUPDATE文もDELETE文も同じです。

 

WHERE句で記述した条件を満たしたデータのみが抽出されるため、特定の従業員を表示したい場合や本の題名を調べたい時など、複数のレコードの中から特定のレコードを抽出したい時に便利です。

 

では実際に試してみましょう。

今回は例として、以下のようなテーブル(テーブル名:teachers)を使用します。


SELECT *

FROM teachers ;

名前がナオキのデータを取得します。


SELECT *

FROM teachers

WHERE name = 'ナオキ' ;

次にid 3を指定して該当するデータを取得してみます。


SELECT *

FROM teachers

WHERE id = 3 ;

このようにWHERE句で指定した条件のデータを取得することができます。

ちなみにWHERE句で条件を指定しないと以下のようにテーブル全体のデータを取得します。

—–

今回の学習ポイント

・WHERE句はデータベースに格納されているデータの中から特定のデータを取得したい時に使用する。

・WHERE句には取得したいレコードの条件を記述する。

・WHERE句を使わないとテーブル全体のデータが指定される。

—–

練習問題

問題として使用するデータは「SQL練習問題」のものを使用しています。

以下からダウンロード可能です。

以下のようにしてworldcup2014データベースを作成し、インポートしてください。

※worldcup2014.zip解凍してできるworldcup2014.sqlファイルをCドライブ直下に配置した場合。

worldcup2014.sql

[sql] CREATE DATABASE worldcup2014;
USE worldcup2014;
Source C/worldcup2014.sql
[/sql]
  1. countriesテーブルからグループAのデータを取得する。
答え
[sql] SELECT *

FROM countries

WHERE group_name = ’A’ ;

[/sql]

テーブル名はcountries、WHERE句でgroup_nameカラムのAを指定します。

  1. フォワードのデータだけ抽出する。
答え
[sql] SELECT *
FROM players
WHERE position =’FW’;

[/sql]

positionカラムでFWを指定したのでFW選手のデータのみ取得できました。

※一部選手省略

 

以上、WHERE句とはでした。

 

 

連載目次リンク

SQL基礎 連載目次

関連する連載リンク

SQL練習問題 一覧まとめ