Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Tính giá trị trung bình (AVG) cho nhiều cột trên các hàng trong MySQL

Giới thiệu

Hàm tổng hợp AVG(cot) tính trung bình cộng của các giá trị không NULL trong cột. Có thể tính trung bình cho nhiều cột cùng lúc trong một truy vấn.

Ví dụ minh họa

Bước 1: Tạo bảng 3 cột số

CREATE TABLE demo31 (value1 INT, value2 INT, value3 INT);
INSERT INTO demo31 VALUES (34,55,67), (50,60,70), (100,200,300), (10,300,200);

Bước 2: Tính trung bình từng cột

SELECT 
    AVG(value1) AS Value1_AVG,
    AVG(value2) AS Value2_AVG,
    AVG(value3) AS Value3_AVG
FROM demo31;

Kết quả

+------------+------------+------------+
| Value1_AVG | Value2_AVG | Value3_AVG |
+------------+------------+------------+
| 48.5000    | 153.7500   | 159.2500   |
+------------+------------+------------+

Giải thích: (34+50+100+10)/4 = 48.5; (55+60+200+300)/4 = 153.75; (67+70+300+200)/4 = 159.25.

Mở rộng: Dùng AVG(DISTINCT cot) để loại bỏ trùng lặp. Kết hợp GROUP BY để tính trung bình theo nhóm.