使用DESC和ROWNUM进行SELECT

Pee*_*ter 2 sql oracle

我目前的查询:

SELECT DACTIONMILLIS, DACTIONDATE INTO WF_DACTIONMILLIS, WF_DACTIONDATE 
FROM WORKFLOWHISTORY 
WHERE ddocname=? and LOWER(DACTION)=?
and lower(DWFSTEPNAME)=?
and lower(DUSER)=? 
and rownum = 1
ORDER BY DACTIONDATE desc;
Run Code Online (Sandbox Code Playgroud)

但是因为在我获得无效结果之前在订单之前应用了rownum.我在stackoverflow上找到了以下主题:如何在订购后限制Oracle查询返回的行数?但这讨论了一个选择,而不是一个选择

Cyr*_*don 5

SELECT DACTIONMILLIS, DACTIONDATE INTO WF_DACTIONMILLIS, WF_DACTIONDATE 
FROM (
    SELECT DACTIONMILLIS, DACTIONDATE, WF_DACTIONDATE 
    FROM WORKFLOWHISTORY 
    WHERE ddocname=? and LOWER(DACTION)=?
    and lower(DWFSTEPNAME)=?
    and lower(DUSER)=? 
    ORDER BY DACTIONDATE desc
)
WHERE rownum = 1
Run Code Online (Sandbox Code Playgroud)