我在jsonb
中有一个保存映射的列,如{'a':1,'b':2,'c':3}
,其中每行键的数量不同。
我想对其进行计数-- jsonb_object_keys可以检索键,但它是setof
类型
是否有类似于此的东西?
(select count(jsonb_object_keys(obj) from XXX )
(这样做不会起作用,因为 ERROR: set-valued function called in context that cannot accept a set
)
json_object_keys(json)
jsonb_object_keys(jsonb)
setof text Returns set of keys in the outermost JSON object.
json_object_keys('{"f1":"abc","f2":{"f3":"a", "f4":"b"}}')
json_object_keys
------------------
f1
f2
由于键的数量可能很大,交叉表并不可行。
function json_object_keys(character varying) does not exist
的错误提示。 提示:没有找到匹配给定名称和参数类型的函数。您可能需要添加显式类型转换。 - ericn