是否有一个函数-或一种方法来轻松确定json数据类型在postgresql?
例如:
select key, value, pg_typeof(value) FROM jsonb_each('{"foo":1,"bar":"2","ack":[1,2,3]}'::jsonb)
的回报:
key value pg_typeof
ack [1, 2, 3] jsonb
bar "2" jsonb
foo 1 jsonb
我如何确定ack的值是一个数组,bar是一个字符串,foo是一个数字?
从这里的JSON操作符,jsonb_typeof
:
select key, value, jsonb_typeof(value) FROM jsonb_each('{"foo":1,"bar":"2","ack":[1,2,3]}'::jsonb);
key | value | jsonb_typeof
-----+-----------+--------------
ack | [1, 2, 3] | array
bar | "2" | string
foo | 1 | number