Postgresql postgres9.4通过jsonb循环:如何选择key:val对的vals

Postgresql postgres9.4通过jsonb循环:如何选择key:val对的vals,postgresql,for-loop,multidimensional-array,jsonb,Postgresql,For Loop,Multidimensional Array,Jsonb,这个plpgsql脚本从一组jsonb对象键:值对中选择键,但是如何为每对选择值呢 DO $BODY$ DECLARE js jsonb := '{"a": "1", "b": "2", "c": "3"}'; i text; BEGIN FOR i IN SELECT * FROM jsonb_each_text(js) LOOP RAISE NOTICE 'key %', i; --RAISE NOTICE 'value %', i.value; &l

这个plpgsql脚本从一组jsonb对象键:值对中选择键,但是如何为每对选择值呢

DO
$BODY$
DECLARE
    js jsonb := '{"a": "1", "b": "2", "c": "3"}';
    i text;
BEGIN
  FOR i IN SELECT * FROM jsonb_each_text(js)
  LOOP
    RAISE NOTICE 'key %', i;
    --RAISE NOTICE 'value %', i.value; <--fai
  END LOOP;
END;
$BODY$;
DO
$BODY$
声明
js jsonb:='{“a”:“1”,“b”:“2”,“c”:“3”}';
i文本;
开始
对于i,从jsonb_中选择*每个_文本(js)
环
提出通知“关键%”,i;

--提出通知“价值%”,即价值 正如您声明的
i
text
一样,它只包含第一列。将其声明为
记录

DO
$BODY$
DECLARE
    js jsonb := '{"a": "1", "b": "2", "c": "3"}';
    i record;
BEGIN
  FOR i IN SELECT * FROM jsonb_each_text(js)
  LOOP
    RAISE NOTICE 'key %', i.key;
    RAISE NOTICE 'value %', i.value;
  END LOOP;
END;
$BODY$;