Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

การคำนวณค่าเฉลี่ย (Average) ข้ามแถวใน MySQL ด้วย AVG()

การใช้ Aggregate Function AVG()

ฟังก์ชัน AVG(column) คำนวณค่าเฉลี่ยของคอลัมน์ตัวเลข ข้ามทุกแถวในตาราง (หรือกลุ่ม)

ตัวอย่าง: ค่าเฉลี่ยหลายคอลัมน์พร้อมกัน

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);

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

ผลลัพธ์

Value1_AVGValue2_AVGValue3_AVG
48.5000153.7500159.2500

การคำนวณ:

  • Value1: (34+50+100+10)/4 = 48.5
  • Value2: (55+60+200+300)/4 = 153.75
  • Value3: (67+70+300+200)/4 = 159.25

การประยุกต์กับ GROUP BY:

SELECT category, AVG(score) 
FROM scores 
GROUP BY category;

หมายเหตุ: AVG() ข้ามค่า NULL อัตโนมัติ ใช้ COALESCE(column, 0) หากต้องการนับ NULL เป็น 0