Mysql
 sql >> база данни >  >> RDS >> Mysql

Псевдонимът на колона не е разпознат в израза WHERE

Използвайте HAVING

HAVING
  LatestBookableTimestamp < UNIX_TIMESTAMP()

Като странична бележка, вие използвате зависима подзаявка, което е лоша идея от гледна точка на ефективността.

Опитайте така:

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. Избиране срещу подмножества на списък в MySQL

  2. База данни - Проектиране на таблица със събития

  3. Как да изберете ред с максимална стойност в таблицата на mysql

  4. Липсва памет при извършване на голяма заявка?

  5. Актуализирайте данните в таблица от динамично създадено поле за въвеждане