Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL - Pesquisar em uma coluna personalizada


Você não pode fazer referência em WHERE para aliases, use em vez disso:
SELECT country_ID*2/id*3.159 as my_id 
FROM `state`
WHERE (country_ID*2/id*3.159)>2;

ou use a subconsulta:
SELECT t.*
FROM
(
   SELECT country_ID*2/id*3.159 as my_id 
   FROM `state`
) as t
WHERE t.my_id>2

Simplificado processamento de consulta lógica , SELECT é quase o último, então WHERE não sabe sobre my_id pseudônimo: