7章数値

本章では、数値計算などの数値に関する一般的な演算を取り上げます。一般に、複雑な計算を行う上で、SQLは第一候補とはなりませんが、日常的な数値演算には効果的です。さらに重要なことに、組織のデータはやはりSQLをサポートするデータベースやデータウェアハウスに置かれているのが最も一般的なので、SQLを使ってそのデータを調べて評価することは、そのデータを活用するのに必須です。この節の手法は、データサイエンティストが将来の分析に最も有望なデータを判断するするのにも役立つように選んでいます。

[Tip]

本章のレシピの中には、集約関数とGROUP BY句を利用するものがあります。グループ化のことをよく知らなければ、少なくとも付録Aの「A.1 グループ化」を読んでください。

レシピ7.1 平均値を計算する

問題

テーブル内のすべての行または行の一部に対して、列の平均値を計算したい。例えば、全従業員の平均給与と部署ごとの平均給与を知りたい。

解決策

全従業員の給与の平均値を計算するには、給与が含まれる列にAVG関数を適用するだけです。

WHERE句を付けなければ、すべての非NULLの平均値を計算します。

select avg(sal) as avg_sal
  from emp

   AVG_SAL
----------
2073.21429

部署ごとの平均給与を計算するには、GROUP BY句を使って各部署に対応するグループを作成します。

select deptno, avg(sal) as ...

Get SQLクックブック 第2版 ―データベースエキスパート、データサイエンティストのための実践レシピ集 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.