การเขียนในภาษา SQL หรือระบบการจัดการฐานข้อมูลต่างๆนั้น มีฟังก์ชันหนึ่งที่ถือเป็นหัวใจสำคัญอย่างยิ่ง นั่นคือ Aggregate Functions หรือฟังก์ชันการรวมข้อมูล ซึ่งเป็นเครื่องมือที่ให้โปรแกรมเมอร์มีความสามารถในการวิเคราะห์ สรุป คำนวณ และเปลี่ยนแปลงข้อมูลที่ซับซ้อนให้กลายเป็นข้อมูลที่ใช้งานได้จริงในรูปแบบที่ง่ายดายมากยิ่งขึ้น
เป็น Aggregate Function พื้นฐานสำหรับการนับจำนวนแถวข้อมูลไม่ว่าจะเป็นทั้งหมดหรือเฉพาะกลุ่มที่เลือก เช่น การนับจำนวนนักเรียนในแต่ละห้องเรียน ตัวอย่างโค้ด SQL:
SELECT COUNT(student_id) FROM students WHERE class = '10A';
การใช้งาน `COUNT` ในที่นี้ คือการนับจำนวนนักเรียนที่อยู่ในห้องเรียน 10A เท่านั้น
สำหรับการคำนวณผลรวมของค่าตัวเลขในคอลัมน์ที่ระบุ สามารถใช้ในการหาผลรวมของยอดขาย หรือการหาผลรวมของคะแนนของนักเรียนได้ ตัวอย่างโค้ด:
SELECT SUM(score) FROM exam_results WHERE subject = 'Mathematics';
จากโค้ดด้านบน เราสามารถหาผลรวมของคะแนนวิชาคณิตศาสตร์ได้
หาค่าเฉลี่ยของคอลัมน์ที่ซึ่งมักจะใช้เพื่อวัดค่ากลางของชุดข้อมูล มีประโยชน์อย่างยิ่งในการวิเคราะห์ข้อมูลทั่วไป ตัวอย่างโค้ด:
SELECT AVG(salary) FROM employees WHERE department = 'Sales';
คำสั่งนี้จะคำนวณหาค่าเฉลี่ยของเงินเดือนของพนักงานแผนกขาย
`MAX` ใช้สำหรับการหาค่าสูงสุด และ `MIN` ใช้หาค่าต่ำสุดในคอลัมน์ที่ระบุ สามารถใช้ประโยชน์ในหลาย ๆ เหตุการณ์ เช่น การหาผลคะแนนสูงสุดหรืออายุมากที่สุดของบุคคลในฐานข้อมูล ตัวอย่างโค้ด:
SELECT MAX(age), MIN(age) FROM persons;
คำสั่งข้างต้นจะแสดงผลอายุมากที่สุดและอายุน้อยที่สุดในตารางบุคคลนั้นๆ
ไม่ใช่ Aggregate Function แต่เป็นคำสั่งที่มักจะใช้ร่วมกับ Aggregate Functions เพื่อจัดกลุ่มข้อมูลและกรองผลลัพธ์ตามเงื่อนไขที่เจาะจง ส่วน `HAVING` เป็นเหมือน `WHERE` แต่ใช้สำหรับเงื่อนไขของ data sets ที่เป็นผลลัพธ์ของการรวมกลุ่ม ตัวอย่างโค้ด:
SELECT COUNT(student_id), class FROM students GROUP BY class HAVING COUNT(student_id) > 30;
ที่นี่ เรากำลังนับจำนวนนักเรียนในแต่ละห้องเรียน และแสดงเฉพาะห้องที่มีนักเรียนมากกว่า 30 คน
การเรียนรู้และใช้งาน Aggregate Functions ในหลากหลายสถานการณ์จะทำให้คุณเข้าใจข้อมูลได้ลึกซึ้งยิ่งขึ้น รวมถึงตัวอย่างที่ยกมานี้ยังเป็นเพียงส่วนหนึ่งของการใช้งานในการพัฒนาแอปพลิเคชันหรือการวิเคราะห์ข้อมูลในโปรเจ็กต์จริงๆ เราสามารถแบ่งปันและขยายความรู้เหล่านี้ให้มากขึ้นผ่านการเรียนรู้ด้วยตนเองหรือผ่านหลักสูตรการเรียนที่ EPT ซึ่งเรามุ่งมั่นที่จะพัฒนาทักษะและเตรียมพร้อมนักเรียนให้มีคุณภาพสูงสุดในวงการเทคโนโลยีสารสนเทศ!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: sql aggregate_functions count sum avg max min group_by having database_management data_analysis
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com