Snowflake cloud data platform 我们可以在UDTF中使用标识符函数,其参数来自Snowflake中的UDTF参数吗?
下面是一个UDTF的示例:Snowflake cloud data platform 我们可以在UDTF中使用标识符函数,其参数来自Snowflake中的UDTF参数吗?,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,下面是一个UDTF的示例: create function select2 (tname varchar, cname varchar) returns table (value variant) as $$ SELECT IDENTIFIER(cname) FROM IDENTIFIER(tname) $$ 当尝试部署此函数时,它抛出一个语法错误异常,抱怨标识符后的表达式无效。 有什么想法吗?UDF不是为创建“动态SQL”而设计的。您可以使用identif
create function select2 (tname varchar, cname varchar)
returns table (value variant)
as $$
SELECT IDENTIFIER(cname) FROM IDENTIFIER(tname)
$$
当尝试部署此函数时,它抛出一个语法错误异常,抱怨标识符后的表达式无效。
有什么想法吗?UDF不是为创建“动态SQL”而设计的。您可以使用identifier函数,但它应该使用文本调用:
create function select2 (tname varchar, cname varchar)
returns table (value varchar)
as $$
SELECT IDENTIFIER('cname') FROM IDENTIFIER('yourtable')
$$
它与普通SQL没有什么不同:
SELECT cname FROM yourtable
如果要生成动态SQL,应使用JavaScript存储过程:
你知道他们为什么有这么严格的限制吗?