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

PostgreSQL , 2 तालिकाओं में से चुनें, लेकिन तालिका 2 से केवल नवीनतम तत्व

PostgreSQL का उपयोग करें एक्सटेंशन DISTINCT ON :

SELECT  DISTINCT ON (documents.id) *
FROM    document
JOIN    updates
ON      updates.document_id = document_id
ORDER BY
        documents.id, updates.date DESC

यह प्रत्येक document.id . से पहली पंक्ति लेगा ORDER BY . में क्लस्टर आदेश।

जांच के लिए स्क्रिप्ट का परीक्षण करें:

SELECT  DISTINCT ON (documents.id) *
FROM    (
        VALUES
        (1, 'Test Title'),
        (2, 'Test Title 2')
        ) documents (id, title)
JOIN    (
        VALUES
        (1, 1, '2006-01-01'::DATE),
        (2, 1, '2007-01-01'::DATE),
        (3, 1, '2008-01-01'::DATE),
        (4, 2, '2009-01-01'::DATE),
        (5, 2, '2010-01-01'::DATE)
        ) updates (id, document_id, date)
ON      updates.document_id = documents.id
ORDER BY
        documents.id, updates.date DESC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL बिना इंस्टॉलेशन के विंडोज़ में चल रहा है लेकिन सर्वर CentOS Linux में शुरू नहीं हो रहा है

  2. एक से अधिक पंक्तियों को वापस करने वाले चयन से सरणी कैसे बनाएं

  3. कैसे सत्यापित करें कि pg_dump संग्रह द्वारा निर्मित संग्रह ठीक और मान्य है?

  4. स्प्रिंग डेटा जेपीए के क्रूड रिपोजिटरी के साथ खोजों के बीच एकाधिक तिथियों को कैसे गठबंधन करें?

  5. REAL टाइप को NUMERIC में कैसे राउंड करें?