postgresql存储过程输入json解析

postgresql存储过程输入json解析,json,stored-procedures,postgresql-9.3,Json,Stored Procedures,Postgresql 9.3,我是PostgreSQL的新手。以下是我正在努力实现的目标。我将获得一个json作为文本作为过程的输入,我需要在过程中解析它们,从中获取数据并将数据保存到表中 以下是一个例子: 这是桌子 CREATE TABLE json_test2 ( id serial primary key, name text, age int ) 现在我尝试创建一个过程,该过程将文本作为包含json的输入 { "data"

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

以下是一个例子:

这是桌子

    CREATE TABLE json_test2
    (
      id serial primary key,
      name text,
      age int
    )     
现在我尝试创建一个过程,该过程将文本作为包含json的输入

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

请创建一个符合我要求的程序

为什么需要该程序,它只是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

过程:


为什么需要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

过程:


如果我有相同的xml数据,你能分享同样的xml信息吗?我们如何解析它并将其插入数据库?你能分享你调用函数的方式吗?只需“从json中选择insert”(jsontext在此…::json);”如果我有相同的xml数据,您是否也可以共享相同的xml信息?我们如何解析它并将其插入数据库?您可以共享调用函数的方式吗?只需“从json中选择插入”(“jsontext在此…”:json);”应该有用