【发布时间】:2017-04-22 19:45:48
【问题描述】:
我正在尝试编写一个存储过程,在其中将查询传递给一个存储过程,该存储过程将在内部调用 row_to_json 函数。我们有多个 DBMS(Oracle、SQL Server 和 postgres),并希望编写一个通用过程来充当 json 处理函数的包装器。
我在看这样的东西
CREATE OR REPLACE FUNCTION proj.sql_row_to_json(sql_t text)
RETURNS json
LANGUAGE sql
AS $function$
with t as (select sql_t )
select row_to_json(t) from t;
$function$
我会在我的应用程序中调用函数
select SQL_ROW_TO_JSON('<sql query>') -> 应该适用于不同的数据库
但是上面的过程给了我下面的结果,而不是实际的数据。
select SQL_ROW_TO_JSON('SELECT id,name FROM emp')
{"sql_t":"SELECT id,name FROM emp"}
【问题讨论】:
标签: sql json postgresql