sql >> Database teknologi >  >> RDS >> Mysql

MySQL - Søg i en brugerdefineret kolonne

Du kan ikke henvise i WHERE til aliaser, brug i stedet:

SELECT country_ID*2/id*3.159 as my_id 
FROM `state`
WHERE (country_ID*2/id*3.159)>2;

eller brug underforespørgsel:

SELECT t.*
FROM
(
   SELECT country_ID*2/id*3.159 as my_id 
   FROM `state`
) as t
WHERE t.my_id>2

Simplified logisk forespørgselsbehandling , SELECT er næsten sidst, så WHERE kender ikke til my_id alias:



  1. Sådan får du værdien af ​​autoincrement af sidste række ved indsættelsen

  2. Mysql Deltag OG SUM

  3. Problem med MySql INSERT MAX()+1

  4. MySQL VÆLG LIKE eller REGEXP for at matche flere ord i én post