Vyřešil jsem to tak, že jsem v podstatě provedl „unnest()“ podobný jsonb_array_elements()
na mém vnořeném poli jsonb.
Tím, že jsem to provedl v dílčím dotazu a pak jsem tyto výsledky naskenoval pomocí variace mého původního dotazu, byl jsem schopen dosáhnout požadovaného výsledku.
Tady je to, na co jsem přišel.
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;