SQLでは、膨大なデータが管理されているデータベースを扱うため、様々なデータを取得して分析することができます。
ここでは、MySQLでサブクエリを活用したデータ取得について簡単に解説します。
【この記事はこんな方に向けて書いています】
・SQLの勉強をしてデータベースを扱ってみたい
・MySQLでサブクエリを使って複数のクエリを一つにまとめたい
【目次】
・サブクエリ
・AS
・まとめ
サブクエリを使うと、複数のクエリを一つにまとめることができます。
スーパーの食品コーナーに並んでいる商品を格納したテーブルを例に、簡単に解説します。
テーブル「items」のデータを取得します。
ここでは、サブクエリを使って砂糖よりも賞味期限が長い商品データを取得してみます。
簡単に解説します。
1~2行目:賞味期限が○○より長い商品データを全て取得します。
SELECT * FROM items
WHERE best_before > (
3~4行目:カッコ内で砂糖の賞味期限を取得します。
SELECT best_before FROM items
WHERE item_name = '砂糖');
このように、クエリの中でクエリを使ったものがサブクエリです。
2つのクエリを1つにまとめることができました。
ASを使うと、取得データのカラム名に任意の名前を付けることができます。
もう一度、テーブル「items」のデータを取得します。
上記で、サブクエリを使って砂糖よりも賞味期限が長い商品データを取得しましたが、一度サブクエリを使わずに同じデータを取得してみます。
砂糖の賞味期限は2023年9月15日なので、それより賞味期限が長い商品データを取得しました。
このとき、カラム名が「item_name」ではわかりにくいため、ASを使って名前を付けます。
ASを使って名前を付けたので、何のデータかわかりやすくなりました。
まとめ
・サブクエリを使うと複数のクエリを一つにまとめることができる
・サブクエリでは、クエリの中にクエリを書く
・ASを使うと取得データのカラム名に任意の名前を付けることができる
ここまで読んで頂きありがとうございました。
-------------------------------------------------------------------------------------
【関連記事】
SQLの環境構築「MySQL」
SQLの基礎:「MySQLの起動」
-------------------------------------------------------------------------------------
当ブログの記事一覧(カテゴリー別)