Orang baik dari saluran IRC Postgresql membantu menemukan jawaban dan menyusun kueri yang benar. Penghargaan itu sebenarnya miliknya, bukan milikku.
Dia membantu menyadari bahwa album dan src harus ditambahkan ke array untuk perbandingan. Misalnya:
SELECT array_agg(rep_id), count(*) AS ct
FROM (SELECT rep_id,
data->>'background' as background,
array_agg(o->>'album' order by o->>'album') as albums,
array_agg(o->>'src' order by o->>'album') as srcs
FROM reports r,
json_array_elements(r.data->'objects') o
GROUP BY rep_id) s
GROUP BY background, albums, srcs
ORDER BY count(*) DESC
LIMIT 5;
Saya tidak tahu apakah ini cara terbaik untuk melakukannya tetapi berhasil. Saran diterima.