SELECT * FROM (SELECT * FROM t1 WHERE pph = '000001' ORDER BY pcbrq) WHERE ROWNUM = 1
with temp as( select 'A' ppm,'000001' pph,to_date('2008-1-1','yyyy-mm-dd') pcbrq from dual union all select 'B' ppm,'000001' pph,to_date('2009-1-1','yyyy-mm-dd') pcbrq from dual ) select * from ( select ppm,pph,pcbrq,row_number() over(order by pcbrq desc) rn from temp where pph='000001' ) where rn = 1
FROM (SELECT *
FROM t1
WHERE pph = '000001'
ORDER BY pcbrq)
WHERE ROWNUM = 1
select 'A' ppm,'000001' pph,to_date('2008-1-1','yyyy-mm-dd') pcbrq from dual
union all
select 'B' ppm,'000001' pph,to_date('2009-1-1','yyyy-mm-dd') pcbrq from dual
)
select * from (
select ppm,pph,pcbrq,row_number() over(order by pcbrq desc) rn from temp where pph='000001'
) where rn = 1