คำสั่ง SELECT นั้นจะคืนค่าเรคอร์ด ต่าง ๆ ตามเงื่อนไขที่เรากำหนดไป ซึ่งในแต่ละแถวจะประกอบไปด้วยข้อมูลที่บอกถึงรายละเอียดของแถวนั้น ๆ แต่ถ้าเราต้องการรู้เกี่ยวกับข้อมูลโดยรวม เราก็จะสนใจในเรื่องของการสรุปผลของข้อมูลนั้น ๆ แทน ดังนั้นเราจึงต้องใช้ function ในการหาผลรวมเพื่อคำนวณข้อมูลโดยสรุปออกมา โดยเราจะต้องจัดกลุ่มข้อมูลเหล่านั้นด้วยคำสั่ง GROUP BY เพื่อที่ focus ไปที่ผลสรุปของข้อมูลแต่ละกลุ่ม
ตัวอย่างของการจัดกลุ่มข้อมูล เช่น ถ้าผมต้องการหาผลรวมของยอดขายในแต่ละวัน ซึ่งหมายความว่าผมต้องการ focus ไปที่แต่ละวันนั้น ดังนั้นผมก็ต้องจัดกลุ่มตามวันที่ เพื่อดูว่าผลรวมของยอดขายในวันนั้น ๆ เป็นเท่าไร ดังนี้
SELECT sell_date, SUM(order_price) as TotalPrice FROM orders GROUP BY sell_date;
ฟังก์ชัน SUM() จะทำการคำนวณหาผลรวมของราคาขายในแต่ละวัน นอกจากนี้เรายังสามารถตรวจสอบเงื่อนไขของการจัดกลุ่มได้ด้วยคำสั่ง HAVING ได้ เช่น ถ้าต้องการตรวจสอบหาวันที่มียอดขายรวมกันมากกว่า 40,000 บาท จะต้องใช้คำสั่งดังนี้
SELECT sell_date, SUM(order_price) as TotalPrice FROM order GROUP BY sell_date HAVING sell_date > 40000;
ผู้สนับสนุน