select x.存货编码,x.日期,y.日期,x.单价,y.单价 from table x
inner join
(select b.存货编码,max(a.日期) 倒数第二日期,max(b.日期) 最大日期
from table a
right join
(select 存货编码,max(日期) 最大日期 from table group by 存货编码) b
on a.存货编码=b.存货编码 and a.日期<b.最大日期
group by b.存货编码) z
on x.存货编码=z.存货编码 and x.日期=z.倒数第二日期
inner join table y
on y.存货编码=z.存货编码 and y.日期=z.最大日期
where x.单价<>y.单价