一个表中不同id_group的最大值

时间:2014-02-11 08:56:16

标签: mysql

我有下表

id, id_group, somenumber
-------------------------
1   0         15
2   1         3
3   0         25 
4   1         14
5   2         63

一个查询是否可以产生这样的结果?

    id_group, maxnumber
    --------------------
    0         63
    1         14
    2         63

请注意,在id_group = 0的结果表中,我需要从源表中获取所有三个组的最大数量,而不仅仅是id_group = 0

谢谢

2 个答案:

答案 0 :(得分:1)

这样的东西
SELECT id_group, MAX(somenumber)
FROM Table1
WHERE id_group <> 0
GROUP BY id_group
UNION ALL
SELECT 0 id_group, MAX(somenumber)
FROM Table1

SQL Fiddle DEMO

答案 1 :(得分:0)

我建议你做以下事情: -

SELECT id_group, MAX(somenumber) FROM `table` GROUP BY id_group;