สอนเขียนคำสั่ง SQL การใช้ GROUP BY เพื่อรวมข้อมูลที่เหมือนกันเข้าด้วยกัน บทความนี้จะใช้คำสั่ง GROUP BY เพื่อหาว่ามีราคา กี่ราคาของตาราง book และในราคาดังกล่าวมีจำนวนข้อมูลกี่ข้อมูล สามารถเขียนคำสั่งได้ดังนี้
ตัวอย่าง ข้อมูลเริ่มต้นของตาราง book
+----+-----------------+--------+
| id | name | price |
+----+-----------------+--------+
| 2 | PHP | 180.00 |
| 3 | MySQL | 180.00 |
| 4 | SQL | 180.00 |
| 5 | Linux | 180.00 |
| 6 | SQL Server | 220.00 |
| 7 | Windows | 220.00 |
| 8 | Javascript | 180.00 |
| 9 | SQL | 180.00 |
| 14 | NULL | 0.00 |
| 19 | Database Design | 300.00 |
+----+-----------------+--------+
10 rows in set (0.000 sec)
ตัวอย่าง SQL การใช้ GROUP BY เพื่อรวมข้อมูลที่เหมือนกันเข้าด้วยกัน
SELECT COUNT(price) AS many, price FROM book GROUP BY price ORDER BY many ASC;
ผลลัพธ์
+------+--------+
| many | price |
+------+--------+
| 1 | 300.00 |
| 1 | 0.00 |
| 2 | 220.00 |
| 6 | 180.00 |
+------+--------+
4 rows in set (0.000 sec)
SQL การใช้ GROUP BY เพื่อรวมข้อมูลที่เหมือนกันเข้าด้วยกัน ตัวอย่างใช้คำสั่ง GROUP BY price หมายความว่าให้รวมข้อมูบของ column price ที่เหมือนกันเข้าด้วยกัน และใช้คำสั่ง COUNT(price) AS many เพื่อนับว่าราคาดังกล่าวมีข้อมูลกี่ข้อมูล พร้อมตั้งชื่อผลลัพธ์ของ column ว่า many