获取每个不同费率名称的最新价格

时间:2011-07-14 22:18:47

标签: sql db2

RateName     Rate    EffectiveDate
--------     ----    -------------
RateOne      400     2011-01-05
RateOne      410     2011-06-31
RateTwo      147     2010-09-21
RateThree    68      2011-07-14
RateTwo      100     2011-10-30

如果我有上述数据,我该如何运行查询,以便将结果作为结果:

RateName     Rate    EffectiveDate
--------     ----    -------------
RateOne      410     2011-06-31
RateThree    68      2011-07-14
RateTwo      100     2011-10-30       

基本上,我只需要为每个不同的费率名称提供最新的费率。

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

SELECT A.*
FROM YourTable A
INNER JOIN (    SELECT RateName, MAX(EffectiveDate) AS MaxDate
                FROM YourTable
                GROUP BY RateName) B
ON A.RateName = B.RateName AND A.EffectiveDate = B.MaxDate