Lua 的新手,但正在尝试。
我有多个需要执行的“创建表”查询,仅更改架构和表名称。目前我正在明确定义每个查询。我想从下表中参数化 Lua 脚本,将表名作为参数传递,因为需要以这种方式生成 100 多个表。
映射表
目标模式 | 目标表 | 起源模式 | 原点表 |
---|---|---|---|
架构1 | 表格1 | 图式3 | 表3 |
架构2 | 表2 | 图式4 | 表4 |
当前解决方案
CREATE LUA SCRIPT "ScriptName" () RETURNS ROWCOUNT AS
query([[
Create or replace table schema1.table1 as
select * from schema3.table3;
]])
query([[
Create or replace table schema2.table2 as
select * from schema4.table4;
]])
我试过的:
CREATE OR REPLACE LUA SCRIPT "ScriptName"('MappingTable') RETURNS ROWCOUNT AS
map_table = execute[[ SELECT * FROM .."'MappingTableName'"..;]] -- passing argument of the script, mapping table name
-- passing values from the columns
load = [[Create or replace table ]]..
[[']]..targetSchema..[['.']]..
[[']]..targetTable..]]..
[[as select * from]]..
[[']]..originSchema..[['.']]..
[[']]..originTable..[[']]
不确定语法,我想我也需要遍历表的值。谢谢