如何在任意键大小的json列中计算特定键在整个表中出现的次数

如何在任意键大小的json列中计算特定键在整个表中出现的次数,json,postgresql,Json,Postgresql,例如,如果我有 colA {"a" : 1, "b": 2} {"b" : 3} {} 我希望我的结果是: key, count a, 1 b, 2 如果不需要处理嵌套的json结构,可以使用jsonb_object_key迭代所有键: select x.ky, count(*) from the_table t cross join jsonb_object_keys(t.col_a) as x(ky) group by x

例如,如果我有

colA
{"a" : 1, "b": 2}
{"b" : 3}
{}

我希望我的结果是:

key, count
a, 1
b, 2

如果不需要处理嵌套的json结构,可以使用
jsonb_object_key
迭代所有键:

select x.ky, count(*)
from the_table t
  cross join jsonb_object_keys(t.col_a) as x(ky)
group by x.ky
order by x.ky;

谢谢很好的回答