我是oracle 11g。 假设以下查询返回n行。
SELECT t.id,t.from_date,t.price FROM prices t order by id, date
我只想从查询中获得前n-1行。 如果不使用内部查询,我怎么能这样做呢?
答案 0 :(得分:6)
编辑:根据添加到问题中的其他信息进行修改。
select p.id, p.from_date, p.price
from (select id, from_date, price, row_number() over (order by id desc) as r from prices) p
where p.r <> 1
order by p.id, p.from_date