SQL AVG() 関数

SQL AVG() 関数

AVG() 関数は数値列の平均値を返します。

すべての製品の平均価格を見つけます:

SELECT AVG(Price)
FROM Products;

注意:NULL 値は無視されます。

構文

SELECT AVG(column_name)
FROM table_name
WHERE condition;

デモデータベース

以下は、例に使用される Products テーブルからの選択です:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 – 12 oz bottles 19
3 Aniseed Syrup 1 2 12 – 550 ml bottles 10
4 Chef Anton’s Cajun Seasoning 2 2 48 – 6 oz jars 22
5 Chef Anton’s Gumbo Mix 2 2 36 boxes 21.35

WHERE 句の追加

条件を指定するために WHERE 句を追加することができます:

SELECT AVG(Price)
FROM Products
WHERE CategoryID = 1;

エイリアスの使用

AVG 列に名前を付けるために AS キーワードを使用します。

SELECT AVG(Price) AS [average price]
FROM Products;

平均価格を超えるものを選択

平均価格より高い価格のすべてのレコードをリストアップするには、サブクエリ内で AVG() 関数を使用します:

SELECT * FROM Products
WHERE price > (SELECT AVG(price) FROM Products);

GROUP BY と AVG() の使用

ここでは、AVG() 関数と GROUP BY 句を使用して、Products テーブル内の各カテゴリの平均価格を返します:

SELECT AVG(Price) AS AveragePrice, CategoryID
FROM Products
GROUP BY CategoryID;