pgsql字符串转数组,转json等do $$
declare
str text :='{
"tzmxList": [
{
"ZCPH": "CPH000000001",
"CPID": "1111",
"SYJB": "11",
"TZJE": "1000000"
},
{
"ZCPH": "CPH000000002",
"CPID": "2222",
"SYJB": "22",
"TZJE": "2000000"
},
{
"ZCPH": "CPH000000003",
"CPID": "3333",
"SYJB": "33",
"TZJE": "3000000"
}
]
}';
note varchar;
paramlist jsonb;
tzmxList jsonb;
code int;
rec jsonb;
V_ZCPH    varchar(20);        -- ⼦产品账号
V_CPID    integer;            -- 投资产品
V_SYJB    integer;            -- 受益级别
V_TZJE    decimal(20,2);      -- 投资⾦额
begin
paramlist := str;
if paramlist ? 'tzmxList' then
tzmxList := paramlist->'tzmxList';
code := jsonb_array_length(tzmxList);
raise notice 'exists:count=%,%',code,tzmxList;
for rec in select value from jsonb_array_elements(tzmxList)
loop
V_ZCPH := rec->>'ZCPH';  --获取⼦产品账号
V_CPID := rec->>'CPID';  --获取投资产品
sql 字符串转数组V_SYJB := rec->>'SYJB';  --获取受益级别
V_TZJE := rec->>'TZJE';  --获取投资⾦额
raise notice 'exists:count=%,%,%,%',V_ZCPH,V_CPID,V_SYJB,V_TZJE;
end loop;
else
raise notice 'not exists';
end if;
end
$$;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。