初心者が最初に覚えるべきSQL構文5選|これだけで実務のデータ抽出は始まる

プログラミング・データベース
この記事はアフィリエイト広告を利用していますが、内容は私の実体験に基づいた正直な感想です。

前回の記事で「SQLは家計簿のレシートを仕分けるようなもの」とお話ししました。

SQL独学ロードマップ【初心者・40代から最速で実務レベルになる方法】
「40代・50代になってから、新しいITスキルを学ぶなんて、今さら遅すぎるんじゃないか……」気持ちはよくわかりますよ。私も未経験の分野に取り組もうとするときは、同じように感じますから。しかし、結論から言うと、遅すぎることはまったくありません…

「感覚はなんとなく分かったけれど、じゃあ具体的にパソコンにはどんな言葉で指示を出せばいいの?」

今回は、そんな疑問にお答えします。
IT業界で数え切れないほどのデータを見てきた私が、初心者が「これだけ覚えれば、実務のデータ抽出の9割はカバーできる」という基本のSQL構文を5つに厳選しました。

難しい単語や記号を丸暗記する必要は一切ありません。
英語のパズルを組み合わせるような感覚で、気楽に眺めてみてください。

すべての基本、データを取り出す「SELECT(セレクト)」

SQLを学ぶ人が、人生で一番最初に書くことになるのがこの命令です。
文字通り、データベースから「このデータを選んで(SELECT)、画面に見せて」と指示を出す役割を持っています。

例えば、会社の「社員名簿」という表から、名前のデータだけを引っ張ってくるときに使います。

基本の形としては、以下のように英語を並べるだけです。

SELECT 社員名 FROM 社員名簿;

プログラミングだと「画面に文字を表示させる」だけで何行も書く必要がありますが、SQLはこれだけでデータがパッと返ってきます。
このシンプルさが、大人の学び直しにSQLをおすすめする一番の理由です。

欲しいデータだけをふるいにかける「WHERE(ウェア)」

データベースには、何万件、何百万件という膨大なデータが眠っています。
そこから「自分の欲しいデータだけ」を指定して絞り込むのが、この「WHERE」です。

レシートの例で言えば、「金額が300円以上のものだけ集めて」とか、「Aスーパーのレシートだけ出して」という条件をつける役割ですね。

実務で使うなら、こんなイメージです。

SELECT 社員名 FROM 社員名簿 WHERE 年齢 >= 40;

これで、40代以上の社員だけを絞り込んでリストアップできます。
営業データの分析や、特定の顧客リストを作るときなど、在宅ワークでも最も頻繁に出番がある重要な構文です。

データを綺麗に並び替える「ORDER BY(オーダーバイ)」

絞り込んだデータが、不規則にバラバラの順番で出てきたら見にくいですよね。
売上の高い順に並べたり、日付の古い順に並べたりと、データを「整列」させるのが「ORDER BY」です。
※「ORDER」には「注文する」「命令する」の他に「順序付けて整理する」という意味もあります

SELECT 商品名, 価格 FROM 売上履歴 ORDER BY 価格;

売上履歴の表から、商品名と価格を取り出します。価格の安い順番に表示します。

高い順番にしたいときは、最後に「DESC」を付けます。
※「descending」=「下ってゆく、下向きの」という意味です。
 この単語は馴染みがないでしょうが、「ディー・イー・エス・シー」と言いながら何度も使っていくうちに、イヤでも覚えます。忘れても都度調べればまったく問題なし。

SELECT 商品名, 価格 FROM 売上履歴 ORDER BY 価格 DESC;

上の文の最後に付けただけです。
これで、高い商品から順番にズラリと綺麗に並びます。
Excelの並び替えボタンをクリックするイメージですが、こちらは一瞬で終わるので本当に気持ちがいいですよ。

電卓代わりに一瞬で計算してくれる「SUM(サム)/COUNT(カウント)」

ここから少しだけ「実務で重宝されるスキル」の領域に入ります。
データベースからデータを引っ張ってくるだけでなく、その場で数字を計算してくれる命令です。

  • SUM:合計金額を計算する
  • COUNT:データの件数(人数や売上件数)を数える

Excelでお馴染みの関数と名前が同じなので、親しみやすいと思います。

SELECT SUM(売上金額) FROM 売上履歴;

これだけで、会社の売上履歴にある総売上をデータベースが裏側で一瞬で計算して数字を出してくれます。
私たちがそろばんを弾く必要も、紙と見比べて電卓のキーを叩き間違えて冷や汗をかく必要もありません。

Excelを使い慣れている人なら、この便利さはよくわかるでしょう。
ちなみに、Excelにある計算関数のよく使うものは、SQLでも用意されています。
書き方や単語は異なる場合があります。

一歩進んだ集計「GROUP BY(グループバイ)」

最後の5つ目は、データの「グループ分け」です。
上記の「SUM(合計)」と組み合わせて使うことで、SQLの真骨頂を発揮します。

例えば、ただの売上合計ではなく、「お店ごとに、それぞれいくら売れたか合計を出して」というときに使います。

SELECT 店名, SUM(売上金額) FROM 売上履歴 GROUP BY 店名;

これを実行すると、お店ごとの売上集計表がパッと完成します。
一見難しそうに見えますが、「店名ごとにグループを作って、それぞれの売上を合計してね」と、パソコンにそのまま伝えているだけです。

この「GROUP BY」が使いこなせるようになると、在宅ワークの案件でも「データ集計の担当者」として、企業から非常に重宝されるようになります。

下のページでは、さらにSQLの小技10個をまとめています。

現場で役立つSQLの小技10選|現役DBエンジニアが裏側を教えます
前の記事では、SQLの基本となる「5つの構文」をお話ししました。これを覚えるだけでも、データベースからデータを取り出すことは十分に可能です。ただ、実際の在宅ワークや企業の現場では、教科書通りにはいかない「ちょっとした困りごと」や「めんどくさ…

まとめ:暗記は不要。忘れたらGoogleに聞けばいい

今回は基本の5つを紹介しましたが、大切なことなのでもう一度言います。
これらを「一文字も間違えずに暗記しよう」とする必要は、まったくありません。

実務歴の長い私だって、たまに「あれ、ここのカンマの位置どうだったっけ?」とド忘れして、普通にネットで検索しながら書いています。
カンニングしながら仕事をしても、誰も怒らないのがITの世界です。

「英語のパズルを並べ替えると、データが言うことを聞いてくれるんだな」

まずはそのくらいの、ゆるいイメージを持っていただければ大成功です。

もし、「パズルの組み合わせ方を、もう少し実際の画面を見ながら練習してみたい」「自分のパソコンで試すのが不安だから、オンラインで教えてほしい」と感じたら、プロの力を借りるのも賢い選択です。

私が最初のステップとして紹介したCodeCampの無料カウンセリングでは、現役のエンジニアが「初心者にはどの練習環境が一番おすすめか」を、あなたのペースに合わせて丁寧に教えてくれますよ。

➔ [無料] CodeCampのカウンセリングで大人のIT学習についてプロに相談してみる

あなただけの歩幅で、一歩ずつ進んでいきましょう。私もそうしましたから。