gpt4 book ai didi

json - postgresql存储过程输入json解析

转载 作者:行者123 更新时间:2023-12-05 01:20:09 37 4
gpt4 key购买 nike

我是 PostgreSQL 的新手。这就是我想要实现的目标。我将获取一个 json 作为文本作为过程的输入,我需要在过程中解析它们以从中获取数据并将数据保存到表中。

这是一个例子:

这是表格。

    CREATE TABLE json_test2
(
id serial primary key,
name text,
age int
)

现在我正在尝试创建一个过程,它将文本作为包含 json 的输入。

    {
"data": [
{
"name": "kumar",
"age": 12
},
{
"name": "anand",
"age": 25
}
]
}

请创建一个满足我要求的过程

最佳答案

为什么需要 proc,它只是 Postgres 函数:

INSERT INTO table_name (name, age)
SELECT (rec->>'name')::text , (rec->>'age')::integer FROM
json_array_elements('{ "data": [ { "name": "kumar", "age": 12 }, { "name": "anand", "age": 25 } ] }'::json->'data' ) rec

参见 http://www.postgresql.org/docs/9.3/static/functions-json.html

过程:

CREATE FUNCTION insert_from_json(in_json_txt json) RETURNS void AS
$BODY$
INSERT INTO table_name (name, age)
SELECT (rec->>'name')::text , (rec->>'age')::integer FROM
json_array_elements(in_json_txt->'data') rec
$BODY$
LANGUAGE sql

关于json - postgresql存储过程输入json解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33245128/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com