PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cara mengulangi nilai array jsonb PostgreSQL untuk tujuan pencocokan dalam kueri

Saya memecahkan ini pada dasarnya dengan melakukan jsonb_array_elements() seperti 'unnest()'-like pada array jsonb saya yang bersarang.

Dengan melakukan ini dalam subkueri, lalu memindai hasil tersebut menggunakan variasi kueri asli saya, saya dapat mencapai hasil yang saya inginkan.

Inilah yang saya dapatkan.

with dupe as (
select
json_document->>'Name' as name,
identifiers->'RecordID' as record_id
from (
  select *,  
  jsonb_array_elements(json_document->'Identifiers') as identifiers
  from staging
) sub
group by record_id, json_document
order by name
) 

select * from dupe da where (select count(*) from dupe db where 
db.record_id = da.record_id) > 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. Periksa apakah ada baris atau tidak di postgresql

  2. UUID Postgresql didukung oleh Hibernate?

  3. Bagaimana Cosd() Bekerja di PostgreSQL

  4. Permintaan SQL menggunakan IN dengan daftar sangat lambat

  5. SQL Isi tabel dengan data acak