Как подсчитать, сколько раз указанный ключ c встречается во всей таблице в столбце произвольного размера ключа json - PullRequest
0 голосов
/ 12 июля 2020

Например, если у меня есть

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

, я хочу, чтобы мой результат был:

key, count
a, 1
b, 2

1 Ответ

1 голос
/ 12 июля 2020

Если вам не нужно иметь дело с вложенными структурами json, вы можете использовать jsonb_object_keys для перебора всех ключей:

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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...