SQL AVG() Function


ฟังก์ชัน AVG() ส่งกลับค่าเฉลี่ยของคอลัมน์ตัวเลข

ตัวอย่าง

ค้นหาราคาเฉลี่ยของผลิตภัณฑ์ทั้งหมด:

SELECT AVG(Price)
FROM Products;

หมายเหตุ:ค่า NULL จะถูกละเว้น


รูปแบบ(Syntax)

SELECT AVG(column_name)
FROM table_name
WHERE condition;


Demo Database

ด้านล่างนี้คือการเลือกจากตาราง Products ที่ใช้ในตัวอย่าง:

ProductIDProductNameSupplierIDCategoryIDUnitPrice
1Chais1110 boxes x 20 bags18
2Chang1124 – 12 oz bottles19
3Aniseed Syrup1212 – 550 ml bottles10
4Chef Anton’s Cajun Seasoning2248 – 6 oz jars22
5Chef Anton’s Gumbo Mix2236 boxes21.3


เพิ่มส่วนคำสั่ง Where

คุณสามารถเพิ่ม WHERE clause เพื่อระบุเงื่อนไข:

ตัวอย่าง

ส่งกลับราคาเฉลี่ยของผลิตภัณฑ์ในหมวดที่ 1:

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


การใช้นามแฝง

ตั้งชื่อคอลัมน์ AVG โดยใช้ AS คำสำคัญ

ตัวอย่าง

ตั้งชื่อคอลัมน์ “average price”:

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


แสดงเรคคอร์ดสูงกว่าค่าเฉลี่ย

หากต้องการแสดงเรคคอร์ดทั้งหมดที่มีราคาสูงกว่าค่าเฉลี่ย เราสามารถใช้ฟังก์ชัน AVG()ใน sub query ได้:

ตัวอย่าง

คืนสินค้าทั้งหมดที่มีราคาสูงกว่าราคาเฉลี่ย:

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