许多行的最大值

时间:2014-09-18 15:47:54

标签: sql db2-400

我希望得到最大值,但是当我有几行时。 类似于this post的东西,但对于DB2:

这就是我想要完成的事情: 我有一个客户订单的表,并希望根据最高订单日期选择最后一个订单。

client  order date    ord number
111     2013-01-01    asdf      |
222     2013-01-05    kjhg      |
111     2013-02-02    uiop      |
222     2013-02-06    fghj      |

结果

client  order date
111     2013-02-02
222     2013-02-06

我希望我能发布一张图片,但它不允许我......

谢谢!

1 个答案:

答案 0 :(得分:1)

你只想要一个group by吗?

select client, max(OrderDate) as OrderDate
from orders o
group by client;

如果您想要完整的行,有几种方法。一种方法是使用row_number()

select o.*
from (select o.*, row_number() over (partition by client order by orderdate desc) as seqnum
      from orders o
     ) o
where seqnum = 1;