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

วิธีกำหนดเงื่อนไขกรองข้อมูลที่ระดับกลุ่มในชุดผลลัพธ์ของ MySQL

GROUP BY ในคำสั่ง SELECT แบ่งชุดผลลัพธ์เป็นกลุ่ม หากต้องการคืนเฉพาะกลุ่มบางกลุ่ม ต้องกำหนดเงื่อนไขกรองที่ระดับกลุ่ม ทำได้ด้วย HAVING ภายใน GROUP BY ตัวอย่างด้านล่างจะสาธิต:

ตัวอย่าง

สมมติต้องการคืนเฉพาะกลุ่มที่มีเงินเดือนเฉลี่ย 55000 ใช้เงื่อนไขใน HAVING ดังนี้:

mysql> SELECT COUNT(*), AVG(salary), Designation FROM employees GROUP BY designation HAVING AVG(salary) = 55000;
+----------+-------------+-------------+
| COUNT(*) | AVG(salary) | Designation |
+----------+-------------+-------------+
| 2        | 55000.0000  | Asst.Prof   |
+----------+-------------+-------------+
1 row in set (0.00 sec)