Điều kiện với HAVING
Câu lệnh HAVING
là biểu thức điều kiện tương tự WHERE
nhưng được dùng cho câu lệnh với GROUP BY
.
Câu lệnh HAVING
thường được dùng với các hàm tập hợp (hàm AVG()
, COUNT()
, MAX()
…).
Ví dụ sau tìm lớp nào có điểm trung bình lớn hơn 8.5
điểm:
|
|
+-------------------+------------+ | AVG(score) | class_name | +-------------------+------------+ | 8.650000095367432 | 5B | +-------------------+------------+
Điều kiện của GROUP BY với WHERE
Ví dụ sau chúng ta sẽ lấy các học sinh có điểm lớn hơn hoặc bằng 8.0
. Tiếp theo chúng ta sẽ nhóm các học sinh theo lớp và tính điểm trung bình của các học sinh này.
|
|
+-------------------+------------+ | AVG(score) | class_name | +-------------------+------------+ | 8.599999904632568 | 5A | | 9.5 | 5B | +-------------------+------------+
Ở ví dụ trên, nếu chúng ta muốn lấy điểm trung bình của lớp mà có điểm trung bình lớn hơn 9.0
thì sẽ là:
|
|
+------------+------------+ | AVG(score) | class_name | +------------+------------+ | 9.5 | 5B | +------------+------------+