SQL SELECT文でデータを分析する 1 学習メモ
分析は「分ける」「数える」「モデル化」する
データと向き合い、データの深堀りや集約、確認と言った作業を繰り返すことをアドホック分析という。アドホック分析のプロセスは以下の流れ
- 分ける
- 数える
- モデル化する
分ける
データを「いる・いらない」モノに分ける。残ったいるデータを「〇〇ごとに分ける」という分類・グループ化の作業を行う。
例) 天気データ:気温をいるデータとし、風速はいらないデータとする。残った気温データを地域ごとに分けグループ化する。
数える
データの個数を数えたり、数値の合計や最大値・平均値などを算出すること。
モデル化する
分析を成果物としてまとめること。モデルとは数理モデルのこと。数理モデルは数式やプログラムの形で実現され、なんらかのインプットに対してアウトプットを出すもの。気温の分析で言えば、「日次の平均気温推移」のデータから「明日以降の気温予測が可能になる」などの価値を見出せれば、そのプログラムや式をモデルとし、ビジュアル化しレポートするなど様々なデータ活用が可能になる。
データを活かす、SQLによるアドホック分析
SQLによるデータ分析の場合、先述の「分ける」「数える」「モデル化する」というプロセスはどのように対応するのか。
その前に、SQLのクエリの種類を説明する。クエリは3種類に分類される。
DDLは、テーブルの生成や削除変更を行うコマンド。DMLは、SELECT / INSERTなど、テーブルに対するデータの取得・追加・更新・削除を行うコマンド。DCLは、トランザクションの制御を行うためのコマンド。トランザクションとは、データベースにおけるデータ保存処理などの一連の処理のこと。
このうち、データ分析で利用するのはほぼDMLだけ、しかもSELECT文のみ。データ分析ではいかにSELECT文を使いこなすかが鍵。SELECT文によるデータ分析は以下のように行う。
分ける
- いるデータ・いらないデータに分ける => WHERE句などで絞り込み
- 〇〇ごとに分ける => GROUP BYなどでグループ化
数える
- 集約関数などによる集計
モデル化する
- SQLクエリ文の完成
学習教材