怎么只显示一组里,最大的那个值?
数据如下:
工单号 完成时间毫秒值
000001 1355662908
000001 1355662907
000001 1355662906
000002 1355662905
000002 1355662904
怎么写个sql,可以展示如下格式的数据
工单号 完成时间毫秒值
000001 1355662908
000001
000001
000002 1355662905
000002
也就是工单号为000001的一组里只显示第一个也就是值最大的这个数,000002类似
select c1, c2 from table1 order by c2
------解决方案--------------------select c1, max(c2) from table1 order by group by c1
------解决方案--------------------
select "工单号",decode(rn,1,"完成时间毫秒值") from(
select "工单号","完成时间毫秒值",
row_number() over(partition by "工单号" order by "完成时间毫秒值" desc) rn from ax
);
工单号 DECODE(RN,1,"完成时间毫秒值")
------ -----------------------------
000001 1355662908
000001
000001
000002 1355662905
000002