有没有办法让 PostgreSQL 中的函数返回任意类型?
我正在尝试使用 PLV8 从 PostgreSQL 9.2 中的 JSON 类型中获取和比较字段。
以下作品:
CREATE or replace FUNCTION jn (j json, key any ) RETURNS numeric
LANGUAGE plv8
IMMUTABLE
AS $function$
var ej = JSON.parse(j);
if (typeof ej != 'object') return NULL;
return JSON.stringify(ej[key]);
$function$;
SELECT * FROM things WHERE jn(data,'count') <= '10';
返回计数字段<= 10的位置。但是,如果该字段不是数字,它将失败。我不想为我的 json 可能持有的每种类型的数据创建一个特定的函数,有没有办法以某种方式推断数据类型并隐式转换?