mysql min where statement

2019-03-05 06:01发布

问题:

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?

回答1:

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.