我想根据日期字段(crtn_dt)从表中选择最新记录。以下查询无效。有没有人知道应该如何修复它?
select * from parcels
order by crtn_dt desc
where rownum = 1
答案 0 :(得分:1)
您需要在子查询中对数据进行排序,并在外部查询中对其进行过滤。
select *
from (
select *
from parcels
order by crtn_dt desc
)
where rownum = 1
order by
子句是最后执行的操作之一。
你的查询做了什么,除了在语义上不正确之外,它返回一个(感谢rownum = 1
谓词)任意行,然后将order by
子句应用于那一行。