sql 中的 avg 函數用于計算數字值的平均值。它的語法是 avg(column_name)。avg 函數會忽略 null 值。可以使用 as 關鍵字為結果指定別名。它只適用于數字類型的數據,如果目標列沒有值或僅包含 null 值,則返回 null,如果包含非數字值則拋出錯誤。
AVG 函數在 SQL 中的用法
SQL 中的 AVG 函數用于計算一組數字值的平均值。
語法:
<code>AVG(column_name)</code>
登錄后復制
其中:
column_name
是要計算平均值的目標列。
用法:
<code>-- 示例表包含 'sales' 列,存儲銷售數據 CREATE TABLE sales ( product_id INT, sales INT ); -- 計算 'sales' 列的平均值 SELECT AVG(sales) FROM sales;</code>
登錄后復制
返回結果:
<code>NULL</code>
登錄后復制
因為表中還沒有數據,因此結果為 NULL。
處理 NULL 值:
AVG 函數會忽略 NULL 值。例如:
<code>-- 在 'sales' 列中插入一些數據,包括 NULL 值 INSERT INTO sales (product_id, sales) VALUES (1, 10), (2, 20), (3, NULL); -- 計算 'sales' 列的平均值 SELECT AVG(sales) FROM sales;</code>
登錄后復制
返回結果:
<code>15.0</code>
登錄后復制
AVG 函數忽略了 NULL 值,因此平均值為 (10 + 20) / 2 = 15。
使用別名:
可以使用 AS
關鍵字為 AVG 函數的結果指定別名。例如:
<code>-- 計算 'sales' 列的平均值并將其別名為 'average_sales' SELECT AVG(sales) AS average_sales FROM sales;</code>
登錄后復制
返回結果:
<code>| average_sales | |---|---| | 15.0 |</code>
登錄后復制
注意事項:
AVG 函數只適用于數字類型的數據。
如果目標列中沒有值或僅包含 NULL 值,則 AVG 函數會返回 NULL。
如果目標列包含非數字值,則 AVG 函數會拋出錯誤。