希望你有一个美好的一天.我遇到了一个问题.
在数据库中,使用distinct是无效的,并且会造成许多超时问题.
所以在一个简单的例子中我有......
select distinct first_value(e.error_message) over (order by create_date desc)
from database e
Run Code Online (Sandbox Code Playgroud)
哪一个错误消息最新排序的结果,它是同类中的第一个值,现在当我运行它需要大约.8秒这是不错的,但问题是,加入并使这个查询更大,做更多只是检索错误将是一个问题.
所以如果我做以下查询......
select first_value(e.error_message) over (order by create_date desc)
from database e
Run Code Online (Sandbox Code Playgroud)
此查询大约需要0.4秒,但问题只是想要给出的第一个项目.我该怎么做,我不知道具体的行号.
感谢大家.
*编辑
只是为了让每个人都知道,使用Rob的解决方案使我的查询更加高效,不要在可能时使用DISTINCT !!!!
select max(e.error_message) keep (dense_rank last order by create_date)
from database e
Run Code Online (Sandbox Code Playgroud)
编辑:这是LAST功能文档的链接
它按create_date排序时选择最后一条错误消息.