从三列中选择不同的值,最多四分之一,其中有重复项

时间:2009-01-21 22:34:48

标签: sql oracle distinct max

我有一个包含一个数值(n)和三个字符串值(a,b,c)的表。如何查询此表,以便只获得(a,b,c)的不同值,如果有重复项,则取相应的n个值的最大值?

2 个答案:

答案 0 :(得分:4)

select max(n), a, b, c
from mytable
group by a, b, c

答案 1 :(得分:4)

使用GROUP BY

select a, b, c, max(n) 
from table 
group by a, b, c;

这将仅显示唯一或不同的a, b, c集合,并显示该集合中找到的最大n

MAX是一个设计用于GROUP BY的聚合函数。其他可能有用的聚合函数包括MINAVERAGECOUNT