小编Aro*_*tae的帖子

Postgres函数返回一行作为JSON值

我是PG的新手,并尝试从MSSQL转换.

我正在开发一个将返回JSON结果的函数.这个工作:

Create Or Replace Function ExampleTable_SelectList()
Returns JSON As
$$
  Select array_to_json(array_agg(row_to_json(t))) From
    (Select id, value1, value2, From ExampleTable) t
$$ Language SQL;
Run Code Online (Sandbox Code Playgroud)

现在,我想调用可以更新的返回值并将该值转换为JSON以返回.所以,这个给出了set命令的错误.

Create Or Replace Function ExampleTable_Update (id bigint, value1 text)
  Returns JSON As
$$
  Select row_to_json(t) From
  (
    Update ExampleTable
    Set Value1 = value1
    Where id= id
    Returning Value1, Value2;
  ) t
$$ Language SQL;
Run Code Online (Sandbox Code Playgroud)

我怀疑Postgres不允许将该UPDATE语句作为子查询.那还有吗?

postgresql json sql-function postgresql-9.4

3
推荐指数
1
解决办法
4175
查看次数

标签 统计

json ×1

postgresql ×1

postgresql-9.4 ×1

sql-function ×1