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

PostgreSQL के साथ तालिकाओं को मर्ज करने के लिए पूर्ण बाहरी शामिल हों

अन्य उत्तरों से प्रेरित, लेकिन शायद बेहतर व्यवस्थित:

SELECT *, 
       brcht + cana + font + nr AS total 
FROM   (SELECT insee, 
               annee, 
               SUM(Coalesce(brcht.nb, 0)) brcht, 
               SUM(Coalesce(cana.nb, 0))  cana, 
               SUM(Coalesce(font.nb, 0))  font, 
               SUM(Coalesce(nr.nb, 0))    nr 
        FROM   brcht 
               full outer join cana USING (insee, annee) 
               full outer join font USING (insee, annee) 
               full outer join nr USING (insee, annee) 
        GROUP  BY insee, 
                  annee) t 
ORDER  BY insee, 
          annee; 

देना:

 insee  | annee | brcht | cana | font | nr | total 
--------+-------+-------+------+------+----+-------
 036223 |  2013 |     0 |    0 |    0 |  1 |     1
 036223 |  2014 |     0 |    0 |    0 |  1 |     1
 036223 |  2017 |     0 |    1 |    0 |  0 |     1
 086001 |  2013 |     0 |    0 |    0 |  1 |     1
 086001 |  2014 |     0 |    0 |    0 |  2 |     2
 086001 |  2015 |     0 |    0 |    0 |  4 |     4
 086001 |  2016 |     0 |    2 |    0 |  2 |     4
(7 rows)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या पोस्टग्रेज में 1 बाइट नंबर स्टोर करना संभव है?

  2. pg_restore क्वेरी निष्पादित नहीं कर सका:त्रुटि:अमान्य स्थानीय नाम:en_US.UTF-8

  3. Windows 10 पर Postgresql 11 में JSON फ़ाइल आयात करना

  4. PostgreSQL प्रारंभ नहीं होगा:server.key के पास समूह या विश्व पहुंच है

  5. मैं एक अलग कॉलम द्वारा आदेशित सबक्वायरी पर एक DISTINCT कैसे ले सकता हूं, और इसे तेज़ कर सकता हूं?