SQLのAVG関数と他の集約関数(SUM, COUNTなど)の違い

この記事では、SQLにおけるAVG関数と他の集約関数(SUM、COUNTなど)との違いについて深く掘り下げます。それぞれの関数がどのような場合に使用されるのか、どのように機能するのかを詳細に解説します。

目次

集約関数とは

SQLの集約関数は、特定の列に含まれる複数の行の値を一つの結果にまとめる関数です。集約関数は主にグループ化されたデータの分析や要約に使用されます。

AVG関数の基本

AVG関数は、特定の列の平均値を求めるための関数です。数値列に対してのみ使用可能であり、NULL値は無視されます。

社員給与
田中300000
鈴木250000
佐藤400000
テーブル名称1: 社員と給与

AVG関数の使用例

上記のテーブルに基づいて、以下のSQLクエリは社員の平均給与を求めます。

SELECT AVG(給与) FROM 社員;

この場合、結果は (300000+250000+400000)/3 = 316666.67 となります。

SUM、COUNTなど他の集約関数

SUM関数は、数値列の合計値を計算します。COUNT関数は、行数または非NULL値の数を数えます。これらの関数もAVG関数と同様に、特定の列に対して使用されます。

関数名説明
SUM合計値を求めるSUM(給与)
COUNT行数を数えるCOUNT(社員)
AVG平均値を求めるAVG(給与)
テーブル名称2: 集約関数の比較

他の集約関数の使用例

以下のSQLクエリは、上記のテーブルに基づいて、社員の総給与と社員数を求めます。

SELECT SUM(給与), COUNT(社員) FROM 社員;

この場合、結果は SUM = 300000 + 250000 + 400000 = 950000、COUNT = 3 となります。

まとめ

AVG関数は平均値を、SUM関数は合計値を、COUNT関数は行数を計算する集約関数です。それぞれの関数は独自の用途と機能があり、データ分析において重要な役割を果たします。これらの関数を適切に使用することで、効率的なデータ分析が可能になります。

コメント

コメントする

目次