查找最新单价
select distinc pn,MAX(date) ,price from po a where not exists(select * from po b where b.pn =a.pn and b.date<MAX(a.date) )select DISTINCT pn,MAX(date)as date,price FROM po WHERE price >0GROUP BY 1,3
需要一行代码能直接找出全部料号的最新价格,如果最新的日期相同,那么取最大的那个价格。
自己尝试了多次均不能达到满意效果,请帮忙,谢谢。
po表结构如下:
pn max_date price
A01.34.000640 2007-5-23 1006.8376
A01.34.0006200 2007-8-10 982.90598
A01.34.0006200 2007-12-17 1138
A01.34.0006200 2008-6-4 1094.23
A01.34.0006200 2008-7-2 1094.2308
A01.34.000640 2008-12-22 1121.1538
A01.34.000640 2009-1-9 1121.068
A01.34.000640 2009-5-22 1111.6505
A01.34.000640 2009-12-29 1097.0874
A01.34.000640 2010-4-1 1092.233
A01.34.000640 2011-8-25 1025.641
A01.34.000640 2011-8-25 1019.4175