Computer >> Máy Tính >  >> Lập trình >> MySQL

Sự khác biệt giữa mệnh đề Where và Have trong SQL

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