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

Bí danh cột không được nhận dạng trong câu lệnh WHERE

Sử dụng HAVING

HAVING
  LatestBookableTimestamp < UNIX_TIMESTAMP()

Một lưu ý nhỏ là bạn đang sử dụng truy vấn con phụ thuộc, đây là một ý tưởng tồi về hiệu suất khôn ngoan.

Hãy thử như thế này:

SELECT 
  a.ID,
  a.DistanceFromUtrecht,
  pp.LatestBookableTimestamp
FROM
  Accommodation AS a
INNER JOIN (
  SELECT
    FK_Accommodation,
    MAX(DateUntil) - (ReleaseDays * 60 * 60 * 24) AS LatestBookableTimestamp
  FROM 
    PricePeriod 
  GROUP BY 
    FK_Accommodation
) AS pp    
ON pp.FK_Accommodation = a.ID    
WHERE
  pp.LatestBookableTimestamp < UNIX_TIMESTAMP()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để chạy một truy vấn trong MYSQL mà không ghi nó vào nhật ký nhị phân

  2. Cách chọn DISTINCT hàng mà không cần chọn trường ORDER BY

  3. MYSQL Chọn trong cùng một bảng

  4. Hibernate- không thể khởi tạo một cách lười biếng tập hợp vai trò:bean.Language.patients, không thể khởi tạo proxy - không có phiên

  5. Truy cập mysql XAMPP qua Python