假設我們想要取結果集的前1條記錄。有沒有更好的方法來做到這一點?Oracle:採用第一條記錄的優雅方式(top-k查詢)
WITH temp
AS ( SELECT WKFC_CRONOLOGIA_ID
FROM SIUWKF.WKF_CRONOLOGIA c
WHERE Ogg_oggetto_id = vOGG_ID
AND TOG_TIPO_OGGETTO_ID = vTOG
AND C.WKFC_DATA_FIN = TO_DATE ('31/12/9999', 'DD/MM/YYYY')
AND Wkfc_Tipo = 'STATO'
ORDER BY WKFC_DATA_INI DESC)
SELECT WKFC_CRONOLOGIA_ID
INTO vCRONOLOGIA_ID
FROM temp
WHERE ROWNUM = 1;
,我不認爲有任何其他優雅的方式來做到這一點。可能還有其他方法可以做到,但這些方式不一定會優雅。 – Annjawn
哪一種方式來制定top-k查詢? – Revious
你想用什麼來避免什麼?或者......關於當前的查詢是「不優雅」? http://stackoverflow.com/questions/3451534/how-to-do-top-top-1-in-oracle –