oracle--分組后獲取每組數據第一條數據


SELECT *        
   FROM (SELECT ROW_NUMBER() OVER(PARTITION BY cc.queuename ORDER BY cc.enroldate DESC) rn,        
         cc.*        
         FROM 
         (select * from 
(select a.patname,a.queuesign,a.queuename,a.status,a.checkroom,a.areapart,a.enroldate
from qs_register a where a.status='就診中'
group by a.patname,a.queuesign,a.queuename,a.status,a.checkroom,a.areapart,a.enroldate
order by a.queuename,a.status,a.enroldate) bb)cc
         )        
  WHERE rn = 1  ;

  參考:

[sql]
SELECT *        
   FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn,        
         test1.*        
         FROM test1)        
  WHERE rn = 1  ;

  注:同理而言,需要查第幾條數據或需要查詢指定條數的數據——where rn=N or where rn in(num1,num2,numx,......)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM