テーブル中の全てのデータを取得する場合ならよいのですが、問い合わせによってはある条件のデータだけを取得したい、と言う場合があります。
例えば従業員のデータがあるテーブル中の、30歳以上の人だけのデータを取得したい、と言うような場合です。
このような場合、select文には
where 句を指定しなければいけません。
下図のようなテーブルがあったとします。テーブル名は従業員とします。
検索条件を指定する
ここで30歳以上の氏名、年齢を取得したい場合SQLは以下のようになります。
select 氏名,年齢
from 従業員
where 年齢 >= 30;
このSQLの結果は以下のように30歳以上のデータのみ抽出されます。
検索条件を指定する
where句には論理演算子を使用して複雑な条件を記述することが出来ます。
論理演算子とは、
AND,OR,NOT,IN,BETWEEN,ALL ANY,EXISTS,SOME
などです。これらを使うと非常に複雑な検索条件を記述できます。
詳しくは各々の論理演算子のページをご覧ください。
ここでは簡単な例としてAND演算子を使用してみます。
さきほどのSQL文に、氏名がyamadaであるという条件もつけてみます。
以下のようなSQLになります。
select 氏名,年齢
from 従業員
where 年齢 >= 30
and 氏名 = 'yamada';
これで氏名がyamadaで、かつ、年齢が30歳以上のデータのみ抽出することが出来たと思います。
このように問い合わせには検索条件を使用して複雑なデータの抽出が可能です。