我正在尝试使用雪花中的变量创建数据库
set var ='mytestdb'; 如果不存在$ var,则创建数据库。
上面的查询给我错误了吗?
答案 0 :(得分:3)
您需要使用标识符:
set my_var = 'test_database';
select $my_var;
create database IF NOT EXISTS identifier($my_var);
结果:
1
Statement executed successfully.
1
test_database
1
TEST_DATABASE already exists, statement succeeded.
有关更多信息:
https://docs.snowflake.com/en/sql-reference/session-variables.html
变量也可以包含标识符名称,例如表名称。要将变量用作标识符,您必须将其包装在IDENTIFIER()中,例如IDENTIFIER($ MY_VARIABLE)。下面是一些示例: