MySQLのWHERE句と比較演算子を完全解説!初心者でもわかる条件検索の基本
生徒
「MySQLって聞いたことはあるんですけど、WHERE句とか条件検索って何をするものなんですか?」
先生
「MySQLはデータベースを操作するための仕組みで、WHERE句は『この条件に合うデータだけを探してね』と伝えるための大事な部分です。」
生徒
「パソコンをほとんど触ったことがなくても理解できますか?」
先生
「大丈夫です。紙の名簿から人を探すイメージで、ゆっくり説明していきます。」
1. MySQLとWHERE句の基本を知ろう
MySQLは、たくさんのデータを表の形で整理して保存する「データベース管理システム」です。 データベースとは、紙のノートや名簿をコンピュータの中に入れたようなものだと考えてください。 その中には、名前や年齢、メールアドレスなどの情報が行と列で並んでいます。
WHERE句は、MySQLでデータを検索するときに使う命令の一部です。 「全部のデータ」ではなく、「条件に合ったデータだけ」を取り出したいときに使います。 たとえば「20歳未満の人だけ」「名前が山田の人だけ」といった探し方ができます。
2. 比較演算子とは何か?
比較演算子とは、「比べるための記号」のことです。 普段の生活でも「同じ」「大きい」「小さい」と比べることがありますが、 MySQLではそれを記号で表します。
MySQLのWHERE句では、主に次のような比較演算子を使います。 これらはSQL初心者が必ず覚える基本中の基本です。
- = :同じである
- != :同じではない
- < :より小さい
- > :より大きい
難しく感じるかもしれませんが、意味は日常で使っている言葉とほとんど同じです。
3. サンプルテーブルを見てみよう
ここでは、usersという名前のテーブルを使って説明します。 このテーブルは、会員名簿のようなイメージです。
id | name | age | email
---+------------+-----+-----------------------
1 | 山田太郎 | 25 | taro@example.com
2 | 佐藤花子 | 19 | hanako@example.com
3 | 鈴木一郎 | 30 | ichiro@example.com
4 | 高橋美咲 | 22 | misaki@example.com
5 | 田中健二 | 18 | kenji@example.com
4. 「=」を使った条件検索の使い方
「=」は「同じ」という意味の比較演算子です。 名簿の中から「名前が山田太郎の人だけを探したい」ときに使えます。
SELECT *
FROM users
WHERE name = '山田太郎';
このSQLは、「usersテーブルの中から、nameが山田太郎と完全に一致する行を表示して」という意味です。
id | name | age | email
---+----------+-----+-------------------
1 | 山田太郎 | 25 | taro@example.com
5. 「!=」を使った条件検索の使い方
「!=」は「同じではない」という意味です。 たとえば「20歳ではない人を探したい」といった場合に使います。
SELECT *
FROM users
WHERE age != 20;
このSQLは、「年齢が20歳ではない人をすべて表示する」という意味になります。
id | name | age | email
---+------------+-----+-----------------------
1 | 山田太郎 | 25 | taro@example.com
2 | 佐藤花子 | 19 | hanako@example.com
3 | 鈴木一郎 | 30 | ichiro@example.com
4 | 高橋美咲 | 22 | misaki@example.com
5 | 田中健二 | 18 | kenji@example.com
6. 「<」「>」で年齢を比べてみよう
「<」は「より小さい」、「>」は「より大きい」という意味です。 数字を比べるときによく使います。 年齢や金額などを条件にした検索でとても便利です。
SELECT *
FROM users
WHERE age < 20;
このSQLは、「20歳より小さい年齢の人を探す」という意味になります。
id | name | age | email
---+----------+-----+-------------------
2 | 佐藤花子 | 19 | hanako@example.com
5 | 田中健二 | 18 | kenji@example.com
反対に、20歳より大きい人を探したい場合は「>」を使います。
SELECT *
FROM users
WHERE age > 20;
7. WHERE句と比較演算子を使うと何が便利なのか
WHERE句と比較演算子を使うことで、たくさんのデータの中から 必要な情報だけをすばやく見つけることができます。 これは、人が何百ページもある名簿を手でめくる代わりに、 コンピュータに条件を伝えて一瞬で探してもらうようなものです。
MySQLの条件検索は、データベースを使う上で欠かせない基本操作です。 プログラミング未経験の人でも、仕組みを理解すれば 「探したい条件をそのまま書いているだけ」だと感じられるようになります。