SQLの SELECT、FROM、WHERE を初心者向けにやさしく解説

IT基礎

今回は、基本情報技術者試験でもよく出てくる SQL の基本文を解説します。

SELECT * FROM employee WHERE age >= 30;
ハク
ハク

SQLって英語みたいで難しそう…!

レイ
レイ

1つずつ読むと、とてもシンプルですよ。


SQLって何?

SQL(Structured Query Language)は、データベースに

  • データを取り出す
  • 追加する
  • 更新する
  • 削除する

ための言語です。

今回はその中でも最も基本的な

SELECT文(データを取り出す命令)

を見ていきます。


SQL文の例

SELECT * FROM employee WHERE age >= 30;

まずは日本語にすると?

employee(社員)表から、年齢が30歳以上のデータをすべて取り出す


たとえばこんな表があるとします

社員ID名前年齢
1田中25
2佐藤31
3鈴木45
4山田28

SQLを実行すると…

SELECT * FROM employee WHERE age >= 30;

結果はこうなります。

社員ID名前年齢
2佐藤31
3鈴木45

30歳以上の人だけが表示されました!


SQLを3つに分けて考えよう

SELECT * FROM employee WHERE age >= 30;

① SELECT *

「どの項目を表示するか」

*

全部の列

という意味です。

  • 社員ID
  • 名前
  • 年齢

すべて表示します。


② FROM employee

「どの表から取ってくるか」

employee は社員情報が入った表の名前です。


③ WHERE age >= 30

「どんな条件で絞り込むか」

  • age → 年齢
  • >= → 以上
  • 30 → 30

つまり、

年齢が30以上の人だけ


ハク
ハク

SELECT * は“全部見せてください!”ってことなんだねっ!

レイ
レイ

その通りです。さらに WHERE で条件を指定しています。

ハク
ハク

ハク
「つまり…」

  • 社員表から
  • 全部の項目を
  • 30歳以上の人だけ
レイ
レイ

完璧です。


WHERE がない場合

SELECT * FROM employee;

これは

employee表の全データを表示

という意味です。


* の代わりに列名を書くこともできる

SELECT name, age FROM employee WHERE age >= 30;

結果:

名前年齢
佐藤31
鈴木45

よく使う比較演算子

演算子意味
=等しい
>より大きい
<より小さい
>=以上
<=以下
<>等しくない

覚え方

SELECT 何を
FROM どこから
WHERE 条件

試験でのポイント

基本情報技術者試験では、

  • SELECT
  • FROM
  • WHERE
  • 比較演算子

の意味がよく問われます。


まとめ

SELECT * FROM employee WHERE age >= 30;

は、

employee表から、年齢が30歳以上のデータをすべて取得する

という意味です。

ハク
ハク

SQLは英語をそのまま読めば意味がわかるんだねっ!

レイ
レイ

SELECT → FROM → WHERE の順番を覚えることが重要です。

コメント

タイトルとURLをコピーしました