【SQL入門編②】テーブルからデータを抽出してみよう!

【SQL入門編②】テーブルからデータを抽出してみよう!

いよいよSQLの具体的な書き方を勉強していきます!

まずはテーブルからデータを抽出してみましょう!

まずは抽出の流れを理解しよう

SQLの上達のコツは、事前に抽出の流れをイメージすることです!
テーブルからデータを抽出の流れは、次のようになります。

「テーブルを選ぶ」「そのテーブル内で抽出したいデータを選ぶ」

具体例と共に、詳しく説明していきます!

テーブルを選ぶ

通常、SNSサイトやショッピングサイトなど、サービスごとに複数のテーブルがデータベース(テーブルたちの保存場所)に入っています。

まずは、複数のテーブルの内、

どのテーブルからデータを抽出したいか

を選ぶ必要があります。
ここでは、以下のユーザーテーブルを選んだとしましょう。

idnamegenderagecreated_at
1太郎男性402022-1-1 12:20:48
2よしお男性312022-1-1 15:40:39
3SAKI女性342022-1-2 06:00:21
4れいか女性302022-1-3 10:00:40
5マイケル男性292022-1-3 10:06:01
ユーザーテーブル

抽出したいデータを選ぶ

テーブルを選んだら、次にそのテーブルの中で、

どのデータを抽出したいか

を選びます。
もし登録ユーザーの名前が知りたい場合は、ユーザーテーブルのnameカラムの値にそれが入っているので、nameカラムを抽出すればよいですね!

name
太郎
よしお
SAKI
れいか
マイケル
ユーザーテーブルのnameカラムのみ抽出

この抽出の流れをイメージした上で、次は具体的なSQLの書き方に移りましょう!

SQLで抽出してみよう

①FROMでテーブルを選ぶ

テーブルを選ぶ際は、FROM テーブル名と書きます。
(「〇〇のテーブルから情報を選びますよ~」という意味ですね。)

通常、テーブルにはそれぞれ独自の名前があります。
仮にユーザーテーブルの名前が「users」だとした場合、以下のように書くことで、usersテーブルを選ぶことができます。

FROM users

②SELECTで抽出したいデータを選ぶ

テーブル内のカラムを選ぶ際は、SELECT カラム名と書きます。
(「〇〇というカラムを選びますよ~」という意味ですね。)

usersテーブル中の「name」カラムを選ぶ場合、先ほどのSQL文の上に、次のように付け加えます。

SELECT name
FROM users

このSQL文を実行することで、知りたかった登録ユーザー名が返ってきます!

ただ、SQL文を見やすくするために、以下のように改行とインデント(文章の前に空白を設けること)を加えたほうがベターです。

SELECT
    name
FROM
    users

※ 改行やインデントを加えても、取得結果はまったく同じなのでご安心を!

お疲れ様です、これでSQL文の完成です!
ちなみに、このようにSQLで書かれた文章のことを、「クエリと呼ぶので、覚えておきましょう!

それでは、練習問題に挑戦してみましょう!

練習問題

idnamegenderagecreated_at
1太郎男性402022-1-1 12:20:48
2よしお男性312022-1-1 15:40:39
3SAKI女性342022-1-2 06:00:21
4れいか女性302022-1-3 10:00:40
5マイケル男性292022-1-3 10:06:01
usersテーブル

練習問題①

usersテーブルの中からageカラムの値を抽出するクエリを書いてください。

練習問題②

usersテーブルの中からnameカラムとageカラムの値を抽出するクエリを書いてください。

練習問題③

usersテーブルの中から、全てのカラムの値を抽出するクエリを書いてください。


おめでとうございます、これでやっと、SQLへの第一歩を踏み出しましたね(^^)/

この先もまだまだ続きますが、SQLは本当に簡単なので、ぜひお茶でも飲みながら、気楽に勉強していきましょう!

-SQL
-, , ,