今回はエンジニアならぜひとも習得しておきたい言語「SQL」について解説します。
この記事では、SQLが全く初めての方でも「なるほど!」と思っていただけるよう、一番基本的な部分をゆっくり丁寧に解説します。
1.SQLって、そもそも何?
SQL(エスキューエル)は、「データベース言語」と呼ばれるものの1つで、「データベース」から、必要な情報を取り出したり、新しく情報を追加したりするときに使う専用の言語です。
例えば、皆さんがAmazonなどECサイトでネットショッピングをするとき、たくさんの「商品データ」がデータベースに保存されています。
「スニーカー」と検索すればスニーカーの一覧が、「価格が安い順」で並び替えればその通りに表示されますよね。
あの裏側では、私たちが操作するたびに「スニーカーのデータを見せて!」「安い順に並び替えて!」というSQLの命令がデータベースに送られているのです。

2.基本の「SELECT」文
SQLで最もよく使うのが、データを「見せてください(検索してください)」とお願いする SELECT(セレクト)文です。/
ここでは、ECサイトの「商品(products)」テーブルを例に見てみましょう。
このようなデータが入っていると想像してください。
▼ products(商品)テーブル
product_id (商品ID) | product_name (商品名) | category (カテゴリ) | price (価格) | release_date (発売日) |
1001 | 魔法のノート | 文房具 | 500 | 2023-04-01 |
1002 | 走るボールペン | 文房具 | 300 | 2023-09-15 |
1003 | よく飛ぶスニーカー | ファッション | 8000 | 2023-05-20 |
1004 | 虹色Tシャツ | ファッション | 3500 | 2024-01-10 |
1005 | はじめてのSQL | 書籍 | 2800 | 2023-11-01 |
2-1. 全データを表示させたいとき (SELECT *)
SELECT * FROM products;この命令は「products というテーブルから(FROM products)、すべての列からデータを表示(SELECT *)」という意味になります。
これを実行すると、上の表がそのまま全部表示されます。
※ちなみにSQLに限らず、他の言語においてもプログラミングにおいてしばしば「*(アスタリスク)」は「全データ」の意味で扱われます。
2-2. 特定の列だけ見たいとき (SELECT カラム名)
SELECT product_name FROM products;この命令は「products というテーブルから(FROM products)、商品名のみを表示(SELECT product_name, price )」という意味になります。
次の例のように、複数の列を指定することも可能です。
SELECT product_name, price FROM products;この命令は「products というテーブルから(FROM products)、商品名と価格のみを表示(SELECT product_name, price )」という意味になります。
複数の列を指定する場合は列名の間に「, (コンマ)」をつける必要があるので注意です。
これを実行すると、以下のようになります。
product_name (商品名) | price (価格) |
魔法のノート | 500 |
走るボールペン | 300 |
よく飛ぶスニーカー | 8000 |
虹色Tシャツ | 3500 |
はじめてのSQL | 2800 |
category (カテゴリ)やrelease_date (発売日)といったデータは不要、必要な列データだけ抽出したい、という場合に使います。
3.欲しいデータだけを選ぶ「WHERE」句
SELECT でデータを取り出せるようになりましたが、実世界のデータは何万件、何億件とあります。全部見せられても困ってしまいますよね。
そこで使うのが WHERE(ウェア)句です。
WHERE を使うと、「条件に合うものだけを表示させる」ことができ、データを絞り込むことができます。




