so we have the mysql MIN() function for getting the minimum in a table...but what if I want to get a MIN() based on a criteria
so something like MIN(age) WHERE height < 170
in which the aim is to get the minimum age of ONLY people whose height is < 170...so say sam is the youngest of those with height < 170, but pam is younger than sam but have height > 170, then the query should return sam instead of pam...
how would I compose such query?
You say you want the "minimum age of ONLY people whose height is < 170"
SELECT MIN(age)
FROM YourTable
WHERE height < 170
Will in fact work as you require then!
WHERE
limits row pre aggregation, HAVING
can be used to filter on the results of aggregations.
来源:https://stackoverflow.com/questions/5696563/mysql-min-where-statement