PostgreSQLで使える比較演算子(= / != / < / >)の基本
生徒
「PostgreSQLで条件をつけてデータを探すとき、記号が出てきて混乱します……」
先生
「それは比較演算子ですね。数字や文字を比べるための記号です。普段の生活でも無意識に使っていますよ。」
生徒
「パソコンが苦手でも理解できますか?」
先生
「大丈夫です。算数の大小や、名簿のチェックと同じ感覚で説明します。」
1. SQLとは何か?
SQLは、データベースという「情報を表の形で保存する箱」に命令を出すための言葉です。PostgreSQLは、そのSQLを使ってデータを管理できる代表的なデータベースです。
SQLを使うと、データを表示する、追加する、変更する、削除するといった操作ができます。その中で、条件を決めて探すときに使うのがWHERE句と比較演算子です。
2. 比較演算子とは?
比較演算子とは、「同じかどうか」「違うかどうか」「大きいか小さいか」を判断するための記号です。
たとえば、算数で使うイコールや大なり小なりと、ほぼ同じ意味を持っています。PostgreSQLでは、これらを使って条件検索を行います。
3. 今回使うテーブルを確認しよう
以下のusersテーブルを使って、比較演算子の動きを確認します。
id | name | age | email
---+------------+-----+-------------------
1 | 山田太郎 | 25 | taro@example.com
2 | 佐藤花子 | 19 | hanako@example.com
3 | 鈴木一郎 | 30 | ichiro@example.com
4 | 高橋次郎 | 22 | jiro@example.com
5 | 伊藤美咲 | 28 | misaki@example.com
4. 「=」 同じかどうかを調べる
「=」は、「同じ」という意味の比較演算子です。指定した値とぴったり一致するデータだけを探します。
名簿で特定の名前を探すときと同じです。
SELECT *
FROM users
WHERE name = '山田太郎';
id | name | age | email
---+----------+-----+-------------------
1 | 山田太郎 | 25 | taro@example.com
5. 「!=」 違うものを探す
「!=」は、「等しくない」という意味です。指定した条件以外のデータを探すときに使います。
名簿で「この人以外全員」と考えると分かりやすいです。
SELECT name, age
FROM users
WHERE age != 25;
このSQLは、年齢が二十五歳ではない人をすべて表示します。
6. 「<」 小さい場合を探す
「<」は、「より小さい」という意味です。年齢や数値が指定した数より小さい場合に使います。
算数の不等号と同じ感覚で使えます。
SELECT *
FROM users
WHERE age < 20;
id | name | age | email
---+----------+-----+-------------------
2 | 佐藤花子 | 19 | hanako@example.com
7. 「>」 大きい場合を探す
「>」は、「より大きい」という意味です。指定した数より大きいデータを探します。
年齢が一定以上の人を探すときによく使われます。
SELECT name, age
FROM users
WHERE age > 25;
このSQLでは、二十五歳より年上の人が表示されます。
8. 比較演算子を使うときの考え方
比較演算子を使うときは、まず日本語で条件を考えることが大切です。
「何歳以上」「誰と同じ」「誰以外」といった言葉を、そのまま記号に置き換えると理解しやすくなります。
9. 比較演算子を覚える意味
PostgreSQLの比較演算子は、条件検索の基本中の基本です。
これらを使えるようになると、必要なデータだけを正確に取り出せるようになります。
まずは「=」「!=」「<」「>」の四つを、生活の例と結びつけて覚えていきましょう。