如何在任意键大小的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;
谢谢很好的回答