Có mệnh đề trong SQL

Co Menh De Trong Sql



Hướng dẫn này nhằm mục đích giúp bạn hiểu và sử dụng mệnh đề HAVING trong câu lệnh SQL.

Hãy để chúng tôi đi sâu vào.







Mệnh đề SQL có

Mệnh đề HAVING trong SQL cho phép bạn đặt điều kiện trong các nhóm được xác định trong mệnh đề GROUP BY của SQL.



Bạn có thể sử dụng mệnh đề GROUP BY để sắp xếp dữ liệu vào các phân vùng khác nhau trong SQL. Bạn có thể thực hiện nhiều hành động trên các nhóm, chẳng hạn như các hàm tổng hợp.



Sử dụng mệnh đề HAVING, bạn có thể chỉ định một điều kiện cho các nhóm. Tuy nhiên, bạn có thể sử dụng mệnh đề HAVING mà không cần ghép nối GROUP BY. Trong trường hợp như vậy, mệnh đề HAVING sẽ hoạt động tương tự như mệnh đề WHERE cho phép bạn tìm kiếm các bản ghi phù hợp.





Đoạn mã sau định nghĩa cú pháp cho mệnh đề HAVING trong SQL:

CHỌN cột
TỪ tên_bảng
NHÓM THEO group_by_clause
nhóm HAVING;



Ví dụ 1: Sử dụng mệnh đề HAVING với Film Table

Để hiểu rõ nhất cách sử dụng mệnh đề HAVING trong SQL, chúng ta sẽ sử dụng cơ sở dữ liệu mẫu do MySQL cung cấp.

Bạn có thể xem tài nguyên được cung cấp sau đây để biết thêm thông tin:

Đối với hình minh họa này, chúng tôi sẽ sử dụng bảng phim từ cơ sở dữ liệu sakila được cung cấp trong liên kết đã cho.

Chúng ta có thể tìm thấy những bộ phim có xếp hạng cho thuê từ 2,99 trở lên bằng cách sử dụng mệnh đề HAVING như trong truy vấn sau:

lựa chọn tiêu đề, năm_phát hành, xếp hạng, thuê_rate
từ phim
nhóm theo đánh giá
có cho thuê_rate > = 2,99 ;


Bảng kết quả như sau:


Trong trường hợp này, truy vấn tìm thấy 4 bản ghi phù hợp như trong bảng trước.

Examlpe 2: Sử dụng Mệnh đề HAVING với Hàm tổng

Chúng ta cũng có thể sử dụng hàm sum() để xác định bộ phim có tổng xếp hạng phim với một phạm vi cho thuê_rate cụ thể.

lựa chọn tiêu đề, năm_phát hành, xếp hạng, thuê_rate, Tổng ( cho thuê_rate )
từ phim
nhóm theo đánh giá
đang có Tổng ( cho thuê_rate ) giữa 500 600 ;


Trong trường hợp này, truy vấn sẽ trả về bảng như sau: