oracle數(shù)據(jù)庫排序后如何獲取第一條數(shù)據(jù)
oracle排序后如何獲取第一條數(shù)據(jù)
場(chǎng)景
想要獲取下列sql的數(shù)據(jù)的第一條
select NEXT_FOLLOWUP_DATE from PH_CHILD_HEALTH_EXAM where person_info_id = '3afc119ab460497d85f59b1e135ea6b1' order by followup_Visit_Date desc
實(shí)現(xiàn)
select NEXT_FOLLOWUP_DATE from (select NEXT_FOLLOWUP_DATE from PH_CHILD_HEALTH_EXAM where person_info_id = '3afc119ab460497d85f59b1e135ea6b1' and is_Cancel = 0 order by followup_Visit_Date desc) where rownum = 1;
oracle分組后獲取每組數(shù)據(jù)第一條數(shù)據(jù)
[sql] SELECT * ? ? ?? ? ?FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn, ? ? ?? ? ? ? ? ?test1.* ? ? ?? ? ? ? ? ?FROM test1) ? ? ?? ? WHERE rn = 1 ?;
此sql代表按照字段x進(jìn)行分組,按照字段y倒序排序,取每個(gè)分組中的第一條數(shù)據(jù)。
其中 partition by 是指的是要進(jìn)行分組的字段。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Oracle 遍歷游標(biāo)的四種方式匯總(for、fetch、while、BULK COLLECT)
這篇文章主要介紹了Oracle 遍歷游標(biāo)的四種方式匯總(for、fetch、while、BULK COLLECT),幫助大家更好的理解和使用Oracle數(shù)據(jù)庫,感興趣的朋友可以了解下2020-10-10Oracle數(shù)據(jù)泵(Data Dump)使用過程當(dāng)中經(jīng)常會(huì)遇到一些奇奇怪怪的錯(cuò)誤案例
從oracledatabase 10g開始引入了data pump(數(shù)據(jù)泵)工具,它提供了一種基于服務(wù)器的數(shù)據(jù)導(dǎo)出導(dǎo)入使用程序。 所有的data pump都作為一個(gè)服務(wù)器進(jìn)程,數(shù)據(jù)不再必須由一個(gè)客戶程序處理。Data Pump工具的導(dǎo)出和導(dǎo)入實(shí)現(xiàn)Oracle數(shù)據(jù)庫之間數(shù)據(jù)的傳輸。2014-09-09Oracle Portal及其門戶網(wǎng)站開發(fā)概述
Oracle Portal及其門戶網(wǎng)站開發(fā)概述...2007-03-03oracle遠(yuǎn)程連接服務(wù)器出現(xiàn) ORA-12170 TNS:連接超時(shí) 解決辦法
oracle遠(yuǎn)程連接服務(wù)器出現(xiàn) ORA-12170 TNS:連接超時(shí) 解決辦法,需要的朋友可以參考一下2013-03-03