来自columnB的第n个最高值与DB2

时间:2017-04-28 11:26:54

标签: db2 max

我有一个员工姓名表(作为columnA)和他们的旅行开始日期(作为columnB)。我希望每位员工获得第三高的旅行开始日期。如果员工的旅行次数少于3次,那么他们的价值应该是该员工的空值。 我正在使用DB2。需要帮忙。 感谢名单 样本标签 Sample Table & Required Output

1 个答案:

答案 0 :(得分:0)

ROWNUMBER将完成这项工作 - 查看此查询:

with temp (employee, travel_date, nth_oldest_travel) as (
select employee,
       travel_date,
       rownumber() over (partition by employee order by travel_date desc)
  from testemp
) 
select * from temp
where nth_oldest_travel = 3

如果您需要为旅行次数少于3次的员工提供空值,请将其加入源