Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Alias ​​kolumny nie jest rozpoznawany w instrukcji WHERE

Użyj POSIADAJĄC

HAVING
  LatestBookableTimestamp < UNIX_TIMESTAMP()

Na marginesie, używasz zależnego podzapytania, co jest złym pomysłem pod względem wydajności.

Spróbuj tak:

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. Zestaw wyników -> getString() ulega awarii, gdy wartość jest>=16

  2. Nieprawidłowy tekst JSON w argumencie 2 - json_contains w MySQL 5.7.8

  3. najlepsze właściwości źródła danych mysql dla Grails tomcat jndi

  4. Jak mogę połączyć się z bazą danych MySQL za pomocą Scali?

  5. Używanie NOT IN z NOT EQUAL podczas zapytań