Trong bài đăng này, chúng ta sẽ hiểu sự khác biệt giữa mệnh đề WHERE và mệnh đề HAVING trong SQL.
Mệnh đề WHERE
-
Nó được sử dụng để lọc các bản ghi khỏi bảng dựa trên một điều kiện cụ thể.
-
Nó có thể được sử dụng mà không có mệnh đề "GROUP BY".
-
Nó có thể được sử dụng với các hoạt động hàng.
-
Nó không thể chứa các chức năng tổng hợp.
-
Nó có thể được sử dụng với các câu lệnh ‘SELECT’, ‘UPDATE’ và ‘DELETE’.
-
Nó được sử dụng trước mệnh đề 'GROUP BY' nếu được yêu cầu.
-
Nó được sử dụng với một chức năng hàng đơn như ‘UPPER’, ‘LOWER’.
Điều khoản HAVING
-
Nó được sử dụng để lọc ra các bản ghi từ các nhóm dựa trên một điều kiện cụ thể.
-
Không thể sử dụng nó nếu không có mệnh đề "GROUP BY".
-
Nó hoạt động với hoạt động cột.
-
Nó có thể chứa các hàm tổng hợp.
-
Nó chỉ có thể được sử dụng với câu lệnh "SELECT".
-
Nó được sử dụng sau mệnh đề 'GROUP BY'.
-
Nó có thể được sử dụng với nhiều hàm hàng như ‘SUM’, ‘COUNT’.
Cú pháp sau:
SELECT column1, column2 FROM table1, table2 WHERE [ conditions ] GROUP BY column1, column2 HAVING [ conditions ] ORDER BY column1, column2