在表中选择最低值小于的最低值

时间:2013-07-16 19:43:07

标签: mysql

我有下表:

table_a
id | charge
1  |   95 
1  |   1
2  |   25

我想从每个id中选择最低费用,并确定它是否小于...例如 SELECT id,charge FROM table_a WHERE MIN(charge)> 10 GROUP BY id

Results:
None

SELECT id,charge FROM table_a WHERE MIN(charge)< 10 GROUP BY id

Results:
id | charge
1  |   1

3 个答案:

答案 0 :(得分:0)

似乎这应该有用,除非我遗漏了一些东西:

SELECT id, MIN(charge)
WHERE charge BETWEEN 10 AND 40
GROUP BY id

答案 1 :(得分:0)

你不能在WHERE子句中有一个聚合函数 - 它必须在HAVING子句中 - 但在你的情况下你是在过滤行级值而不是聚合所以这样的事情可以解决问题:

SELECT id, MIN(charge)
FROM table_a
WHERE charge BETWEEN 10 AND 40
GROUP BY id

答案 2 :(得分:0)

您想使用having子句:

SELECT id, min(charge)
FROM table_a
group by id
having MIN(charge) < 10