0

我正在尝试使用脚本函数在 Exasol 中执行动态查询。以下是代码:

CREATE or replace SCRIPT script_2(a)
RETURNS TABLE AS
quer="select * from table_name cross join table_name"
for i=1, 3 do
    quer=quer .. " table_name"
    print(query)
end
exit(query([[quer]]))
/

无法获得此脚本的输出。为脚本调用执行时出现此错误。以下是错误:

43000:“语法错误,意外 end_of_input,期待 assignment_operator 或 ':' [第 1 行,第 1 列]”在脚本“xxxxxxxxxx”中捕获。第 6 行的“SCRIPT_2”

4

1 回答 1

1

删除变量名称周围的双方括号。

create or replace script script_2 (n)
returns table as
local quer = "select * from (values(0))t0(t0)";
for i = 1, n do
    quer = quer.." cross join (values("..i.."))t"..i.."(t"..i..")";
    print (quer);
end
exit(query(quer));
/
于 2019-01-28T07:42:58.247 回答