我正在尝试创建Redshift SQL函数并尝试通过其名称访问输入变量。
create or replace
function sql_udf_test (inp1 int, inp2 int)
returns int
stable
as $$
select inp1+inp2
$$ language sql;
错误
SQL错误[500310] [42703]:Amazon无效的操作:列“ inp1”不存在;默认值为0。
但是,当我尝试通过其索引访问输入变量时,它的工作正常。
create or replace
function sql_udf_test (inp1 int, inp2 int)
returns int
stable
as $$
select $1+$2
$$ language sql;
select sql_udf_test(1, 2);
输出:
3
任何建议,可能是我在做一些初学者的错误。
亚马逊文档中清楚地提到,在SQL UDF中,必须使用$ 1,$ 2,以便引用函数输入参数,并且可以在Python UDF中使用参数名称。
在Python UDF中,使用参数名称引用参数。在SQL UDF中,根据参数在列表中的顺序使用$ 1,$ 2等进行引用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句