Mệnh đề GROUP BY trong MySQL



Bạn có thể sử dụng mệnh đề GROUP BY để nhóm các giá trị từ một cột, và nếu bạn muốn, thực hiện việc tính toán trên cột đó. Bạn có thể sử dụng các hàm COUNT, SUM, AVG, … trên cột đã nhóm đó.

Để hiểu cách sử dụng của mệnh đề GROUP BY, bạn theo dõi bảng sinhvienk58 có các bản ghi sau:

Mệnh đề GROUP BY trong MySQL

Bây giờ, giả sử dựa vào bảng trên, chúng ta muốn đếm xem có bao nhiêu điểm thi là 8 hay là 9 chẳng hạn.

Nếu bạn viết một truy vấn SQL như sau, thì bạn sẽ nhận được kết quả:

mysql> SELECT COUNT(*) FROM sinhvienk58;

//Ket qua la:
+---------------------------+
| COUNT(*)                  |
+---------------------------+
| 6                         |
+---------------------------+
Quảng cáo

Nhưng điều này không phù hợp với mục đích của bạn là muốn hiển thị từng số điểm thi mà sinh viên đạt được. Vì thế, bạn có thể thực hiện điều này bởi sử dụng các hàm tập hợp trong một mệnh đề GROUP BY như sau:

SELECT diemthi, COUNT(*)
    FROM   sinhvienk58 
    GROUP BY diemthi;

//Ket qua la:
+---------+----------+
| diemthi | COUNT(*) |
+---------+----------+
|  8.00   |   2      |
|  8.50   |   1      |
|  9.00   |   2      |
|  9.50   |   1      |
+---------+----------+
5 rows in set (0.04 sec)

Bạn sẽ thấy nhiều tính năng khác liên quan tới GROUP BY trong các hàm khác như SUM, AVG, …

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học MySQL phổ biến khác tại VietJack:




Tài liệu giáo viên