sqlmysql

Unknown column for calculate field in MySQL


I am having this problem in a complex query. This is the simplificated version:

SELECT sin(3.14) as s from my_table where s < 1

Error: #1054 - Unknown column 's' in 'where clause'


Solution

  • HAVING will SAVE You

    SELECT *,(((acos(sin((".$lat."*pi()/180)) *sin((latitud*pi()/180))
    +cos((".$lat."*pi()/180)) 
    * cos((latitud*pi()/180)) 
    * cos(((".$lng."- longitud)*pi()/180))))*180/pi())
    *60*1.1515*1.609344) as distance 
    FROM pois_data,pois_cat 
    WHERE pois_data.idtipo=pois_cat.id AND latitud IS NOT NULL 
    
    HAVING distance <1