Javascript snowflake 函数将当前日期附加到表名
Javascript function in snowflake to append tablename with current date
最近开始使用snowflake,一直卡在这个问题:
我想将名为 AB_USER 的 table 克隆到 AB_USER_(current_date)。我编写了以下代码来完成此操作:
CREATE or replace PROCEDURE backup_proc()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var tab_name = `AB_USER_BCK_2020_`+ current_date();
stat = `create or replace table staging.` + tab_name + ` clone staging.AB_USER`;
var rs = snowflake.execute( { sqlText: stat} );
return 'Done.';
$$;
问题是我找不到合适的函数来获取当前日期。 Snowflake 提供了一个 JS 环境,但我不知道使用哪个函数来获取当前日期。
我对 snowflake 很陌生,因此非常感谢任何帮助。
谢谢。
CURRENT_DATE 是一个 SQL 命令,所以你需要用 snowflake.execute.
来调用它作为 SQL 语句
如我所见,您想从当前日期获取月份和日期的值,因此您可以使用以下过程:
CREATE or replace PROCEDURE backup_proc()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var curdate = snowflake.execute( { sqlText: "SELECT TO_CHAR(CURRENT_DATE,'MMDD') as curdate"} );
curdate.next();
var tab_name = "AB_USER_BCK_2020_"+ curdate.getColumnValue('CURDATE');
var stat = "create or replace table staging." + tab_name + " clone staging.AB_USER";
var rs = snowflake.execute( { sqlText: stat} );
return "Done.";
$$
;
最近开始使用snowflake,一直卡在这个问题:
我想将名为 AB_USER 的 table 克隆到 AB_USER_(current_date)。我编写了以下代码来完成此操作:
CREATE or replace PROCEDURE backup_proc()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var tab_name = `AB_USER_BCK_2020_`+ current_date();
stat = `create or replace table staging.` + tab_name + ` clone staging.AB_USER`;
var rs = snowflake.execute( { sqlText: stat} );
return 'Done.';
$$;
问题是我找不到合适的函数来获取当前日期。 Snowflake 提供了一个 JS 环境,但我不知道使用哪个函数来获取当前日期。
我对 snowflake 很陌生,因此非常感谢任何帮助。
谢谢。
CURRENT_DATE 是一个 SQL 命令,所以你需要用 snowflake.execute.
来调用它作为 SQL 语句如我所见,您想从当前日期获取月份和日期的值,因此您可以使用以下过程:
CREATE or replace PROCEDURE backup_proc()
RETURNS VARCHAR
LANGUAGE javascript
AS
$$
var curdate = snowflake.execute( { sqlText: "SELECT TO_CHAR(CURRENT_DATE,'MMDD') as curdate"} );
curdate.next();
var tab_name = "AB_USER_BCK_2020_"+ curdate.getColumnValue('CURDATE');
var stat = "create or replace table staging." + tab_name + " clone staging.AB_USER";
var rs = snowflake.execute( { sqlText: stat} );
return "Done.";
$$
;