MySQL SUM() 関数
1. MySQL SUM() 関数とは
SUM() 関数は、数値カラム内の値の合計値を算出するために使用されます。
この関数は、対象のカラムに含まれる NULL値 を無視して計算を行います。
1.1 SUM() の構文
SELECT SUM(column_name)
FROM table_name
WHERE condition;2. デモ用データベース
以下は、Northwind サンプルデータベースの「OrderDetails(注文詳細)」テーブルから抽出したデータの一部です。
| OrderDetailID | OrderID | ProductID | Quantity |
|---|---|---|---|
| 1 | 10248 | 11 | 12 |
| 2 | 10248 | 42 | 10 |
| 3 | 10248 | 72 | 5 |
| 4 | 10249 | 14 | 9 |
| 5 | 10249 | 51 | 40 |
2.1 SUM() の使用例
以下のSQLは、「OrderDetails」テーブルの「Quantity(数量)」フィールドの合計を返します。
実行例
独自のSQLサーバーで試してみましょう:
/* OrderDetailsテーブルの
全数量の合計を算出する */
SELECT SUM(Quantity)
FROM OrderDetails;注意: 計算時、NULL値は無視されます。
2.2 WHERE句を伴う集計
WHERE句を追加することで、特定の条件に合致するデータのみを合計の対象に指定できます。
以下のSQLは、「OrderDetails」テーブルの中で、ProductID が 11 である製品の「Quantity(数量)」の合計を返します。
実行例
/* ProductIDが11の製品に限定して
その数量の合計を取得する */
SELECT SUM(Quantity)
FROM OrderDetails
WHERE ProductId = 11;