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

पंक्तियों को मर्ज करें पोस्टग्रेज करें और मूल्यों को नवीनतम के साथ बदलें जब शून्य न हो

पहला group by organization_core_id slug . के लिए अंतिम शून्य मान वाली पंक्तियों की आईडी प्राप्त करने के लिए और name और फिर तालिका में शामिल हों:

select
  t.organization_core_id, 
  t1.slug,
  t2.name
from (
  select 
    organization_core_id, 
    max(case when slug is not null then id end) slugid, 
    max(case when name is not null then id end) nameid
  from tablename
  group by organization_core_id
) t 
left join tablename t1 on t1.id = t.slugid
left join tablename t2 on t2.id = t.nameid

डेमो देखें .
परिणाम:

> organization_core_id | slug           | name      
> -------------------: | :------------- | :---------
>                    1 | dolphin        | Dolphin v2
>                    2 | sea-horse-club | Sea Horse 



  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. Postgresql में एक विस्तार परीक्षण बनाना

  4. Docker पर PostgreSQL:`plpython3u` के तहत अजगर निर्भरता को कैसे स्थापित और चलाएं?

  5. रेल कार्यात्मक अनुक्रमणिका पोस्टग्रेज करता है