SQLのCOUNTとSUMの使い分け方|データベースの集計関数を理解しよう

データベース

SQLにおける集計関数「COUNT」と「SUM」は、データを集計する際に非常に役立つものですが、どちらを使うべきか分からないという方も多いかもしれません。特に、情報処理技術者試験1級のデータベースの問題でもよく出題されるため、これらの使い分けをしっかりと理解することが重要です。

COUNT関数とは?

COUNT関数は、指定した列の行数をカウントする集計関数です。主に「何件のデータが存在するか?」を調べる際に使用します。COUNT(*)を使用すると、NULLを含む全ての行をカウントできますが、特定の列に対してカウントを行う場合は、列名を指定することもできます。

例えば、ある会社の従業員テーブルから、特定の部署に所属する従業員数をカウントする場合、次のようにCOUNTを使います。

SELECT department, COUNT(*) FROM employees GROUP BY department;

このクエリは、各部署ごとに従業員数をカウントして表示します。

SUM関数とは?

一方、SUM関数は指定した列の数値データを合計する集計関数です。主に「合計金額」や「総売上」など、数値を加算してその合計値を求めるときに使用します。

例えば、売上データを集計して、各店舗の売上合計を求めたい場合は、次のようにSUMを使用します。

SELECT store, SUM(sales) FROM sales_data GROUP BY store;

このクエリは、各店舗ごとの売上合計を表示します。

COUNTとSUMの違い

COUNT関数は行数をカウントするのに対し、SUM関数は数値の合計を求めるという点が大きな違いです。COUNTは、どのようなデータでもカウントできるため、数値や文字列を問わずに使用できますが、SUMは数値データ専用です。

また、COUNTはNULLを含む行もカウントしますが、SUMはNULLを含む行を無視して合計を計算します。

実際の使い分け例

COUNT関数とSUM関数を適切に使い分けるためには、まず「何を集計したいのか?」を明確にする必要があります。例えば、商品の在庫数を数える場合はCOUNTを使いますが、商品の売上額の合計を求める場合はSUMを使います。

以下は具体的な例です。

  • COUNT: ある商品が何回注文されたか数えたい場合。
  • SUM: ある商品の売上金額の合計を求めたい場合。

情報処理技術者試験1級での実践的な使い方

情報処理技術者試験1級では、COUNTとSUMの使い分けを正確に理解しておくことが重要です。試験問題では、複雑なデータセットを基にした集計問題が出題されることが多いため、これらの関数をどのように組み合わせて使うかを実践的に学んでおくことが必要です。

例えば、従業員の給与や売上データの集計において、COUNTを使って件数をカウントし、SUMを使って合計金額を算出するという形で使い分けが求められます。

まとめ

COUNT関数とSUM関数は、SQLの中でも最も基本的かつ重要な集計関数です。それぞれの特徴を理解し、何を集計したいのかによって使い分けることが、データベースの効率的な運用に繋がります。情報処理技術者試験1級では、この使い分けを正確にできるように練習しておきましょう。

コメント

タイトルとURLをコピーしました