Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Bạn có thể sử dụng bí danh trong mệnh đề WHERE trong mysql không?

Bạn có thể sử dụng mệnh đề HAVING, mệnh đề này có thể xem các bí danh, ví dụ:

 HAVING avg_rating>5

nhưng trong mệnh đề where, bạn sẽ cần lặp lại biểu thức của mình, ví dụ:

 WHERE (sum(reviews.rev_rating)/count(reviews.rev_id))>5

NHƯNG! Không phải tất cả các biểu thức đều được phép - sử dụng một hàm tổng hợp như SUM sẽ không hoạt động, trong trường hợp đó, bạn sẽ cần sử dụng mệnh đề HAVING.

Từ Hướng dẫn sử dụng MySQL :

Không được phép tham chiếu đến bí danh cột trong mệnh đề WHERE, vì giá trị cột có thể chưa được xác định khi mệnh đề WHERE được thực thi. Xem Phần B.1.5.4, “Sự cố với Bí danh cột ” .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hướng dẫn thiết kế cơ sở dữ liệu cho hệ thống quản lý hàng tồn kho trong MySQL

  2. Quyền truy cập bị từ chối đối với người dùng '[email được bảo vệ]' (sử dụng mật khẩu:KHÔNG)

  3. Trên Cập nhật khóa trùng lặp giống như chèn

  4. Định nghĩa lược đồ của DBMS

  5. Di chuyển Laravel:khóa duy nhất quá dài, ngay cả khi được chỉ định