Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

ओरेकल में नवीनतम कर्मचारी रिकॉर्ड कैसे प्राप्त करें?

SELECT * FROM 
( SELECT  
    e.*,
    ROW_NUMBER() OVER (partition by emp_id order by effective_date DESC) r
FROM  
    EMPLOYEE  e)
WHERE r = 1;

ऊपर आपको प्रत्येक विशिष्ट emp_id के लिए अधिकतम प्रभावी__दिनांक वाला एक रिकॉर्ड मिलेगा।

दी गई तारीख के लिए आपके रिटर्निंग रिकॉर्ड की दूसरी आवश्यकता को इस क्वेरी द्वारा पूरा किया जाना चाहिए:

("स्टेटस एएससी" - "जॉइनर" स्टेटस लेने का ख्याल रखेगा अगर उसी तारीख के लिए "लीवर" भी है।)

 SELECT * FROM 
( SELECT  
    e.*,
    ROW_NUMBER() OVER (partition by emp_id order by effective_date DESC, status ASC) r
FROM  
    EMPLOYEE  e
WHERE effective_date <= '<your desired date>')
WHERE r=1;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसक्यूएल (ओरेकल) अतिव्यापी अंतराल की संख्या की गिनती

  2. ब्लॉब पर अलग चुनें

  3. Oracle 11g (क्लाइंट) को अनइंस्टॉल / पूरी तरह से कैसे हटाएं?

  4. ORA-1114 रनिंग डाटापैच

  5. पेंटाहो केटल में पिछले इनपुट डेटा के अनुसार डेटा प्राप्त करने के लिए अलग-अलग एसक्यूएल कैसे चलाएं