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

Oracle अधिकतम रिकॉर्ड प्राप्त करने के लिए

आप एक सबक्वेरी का उपयोग कर सकते हैं जो max(process_date) . प्राप्त करता है :

select c1.b_id,
  c2.MaxDate
from table_a a
inner join table_b b
  on a.a_id = b.a_id
inner join table_c c1
  on b.b_id = c1.b_id
inner join
(
  select max(process_date) MaxDate
  from table_c
) c2
  on c1.process_date = c2.maxdate;

देखें SQL Fiddle with Demo

या आप row_number() . का उपयोग कर सकते हैं :

select b_id, process_date
from 
(
  select c1.b_id,
    c1.process_date,
    row_number() over(partition by a.a_id order by c1.process_date desc) rn
  from table_a a
  inner join table_b b
    on a.a_id = b.a_id
  inner join table_c c1
    on b.b_id = c1.b_id
) 
where rn = 1

देखें SQL Fiddle with Demo



  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. त्रुटि 3706 प्रदाता नहीं मिल सका। यह ठीक से स्थापित नहीं हो सकता है

  4. किसी विशिष्ट मान के लिए तालिका में केवल 3 पंक्तियों को जोड़ने की अनुमति दें

  5. मेरे RDS Oracle उदाहरण को PHP सर्वर से कनेक्ट नहीं कर सकता