SQL SELECT文でデータを分析する 1 学習メモ

分析は「分ける」「数える」「モデル化」する

データと向き合い、データの深堀りや集約、確認と言った作業を繰り返すことをアドホック分析という。アドホック分析のプロセスは以下の流れ

  1. 分ける
  2. 数える
  3. モデル化する

分ける

データを「いる・いらない」モノに分ける。残ったいるデータを「〇〇ごとに分ける」という分類・グループ化の作業を行う。

例) 天気データ:気温をいるデータとし、風速はいらないデータとする。残った気温データを地域ごとに分けグループ化する。

数える

データの個数を数えたり、数値の合計や最大値・平均値などを算出すること。

モデル化する

分析を成果物としてまとめること。モデルとは数理モデルのこと。数理モデルは数式やプログラムの形で実現され、なんらかのインプットに対してアウトプットを出すもの。気温の分析で言えば、「日次の平均気温推移」のデータから「明日以降の気温予測が可能になる」などの価値を見出せれば、そのプログラムや式をモデルとし、ビジュアル化しレポートするなど様々なデータ活用が可能になる。

データを活かす、SQLによるアドホック分析

SQLによるデータ分析の場合、先述の「分ける」「数える」「モデル化する」というプロセスはどのように対応するのか。

その前に、SQLのクエリの種類を説明する。クエリは3種類に分類される。

  • DDL(Data Definition Language)
  • DML(Data Manipulation Language)
  • DCL(Data Control Language)

DDLは、テーブルの生成や削除変更を行うコマンド。DMLは、SELECT / INSERTなど、テーブルに対するデータの取得・追加・更新・削除を行うコマンド。DCLは、トランザクションの制御を行うためのコマンド。トランザクションとは、データベースにおけるデータ保存処理などの一連の処理のこと。

このうち、データ分析で利用するのはほぼDMLだけ、しかもSELECT文のみ。データ分析ではいかにSELECT文を使いこなすかが鍵。SELECT文によるデータ分析は以下のように行う。

分ける
  • いるデータ・いらないデータに分ける => WHERE句などで絞り込み
  • 〇〇ごとに分ける => GROUP BYなどでグループ化
数える
  • 集約関数などによる集計
モデル化する
  • SQLクエリ文の完成

 

学習教材

www.socym.co.jp