lea*_*tle 2 snowflake-cloud-data-platform
我已将 JSON 文件加载到 Snowflake 阶段。
现在我的目标是将文件的内容复制到关系表中。
表定义为具有 varchar 或 Boolean 列。
{
"requestRefid": "W2W8P",
"requestid": "kki8786f1b-03eb",
"requestTypes": [
"Do not sell it"
],
"subjectTypes": [
"Current customer"
],
"firstName": "Dan",
"lastName": "Murrary",
"email": "k99008a85ki@gmail.com",
"phone": "410000869",
"emailValidation": true,
"phoneValidation": true,
"message": "Confirm",
}
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的 COPY 语句:
copy into TEST."PUBLIC".REQUESTS(REQUESTREFID, REQUESTID, FIRSTNAME, LASTNAME, EMAIL, PHONE, EMAILVALIDATION, PHONEVALIDATION, IDVALIDATION, MESSAGE, CHANNEL)
from (select $1:requestRefid, $1:requestid, $1:firstName, $1:lastName, $1:email, $1:phone, $1:emailValidation, $1:phoneValidation, $1:idValidation, $1:message, $1:channel
from @sf_tut_stage/sample.json t);
Run Code Online (Sandbox Code Playgroud)
这是我得到的错误:
SQL 错误 [1044] [42P13]:
SQL编译错误:错误第2行位于位置18
函数“GET”的参数类型无效:(VARCHAR(16777216)、VARCHAR(12))
SQL编译错误:错误第2行位于位置18
函数“GET”的参数类型无效:(VARCHAR(16777216)、VARCHAR(12))
SQL编译错误:错误第2行位于位置18
函数“GET”的参数类型无效:(VARCHAR(16777216)、VARCHAR(12))
我可以使用以下查询在阶段中查询 JSON 文件的内容:
select $1
from @sf_tut_stage/sample.json;
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我还尝试在复制语句中添加以下内容:
file_format = (format_name = SF_TUT_CSV_FORMAT));
Run Code Online (Sandbox Code Playgroud)
但没有运气。
编写此语句的正确方法是什么,以便它可以将项目加载$1到各个关系表列中。
您的代码尝试使用该:语法从源中提取值,但它仍然只是一个 varchar,它不允许该语法。使用 PARSE_JSON 尝试此操作,以便 SnowFlake 知道它是 JSON 并且可以适当地应用该语法。
copy into TEST."PUBLIC".REQUESTS(REQUESTREFID, REQUESTID, FIRSTNAME, LASTNAME, EMAIL, PHONE, EMAILVALIDATION, PHONEVALIDATION, IDVALIDATION, MESSAGE, CHANNEL)
from (
select
PARSE_JSON($1):requestRefid,
PARSE_JSON($1):requestid,
PARSE_JSON($1):firstName,
PARSE_JSON($1):lastName,
PARSE_JSON($1):email,
PARSE_JSON($1):phone,
PARSE_JSON($1):emailValidation,
PARSE_JSON($1):phoneValidation,
PARSE_JSON($1):idValidation,
PARSE_JSON($1):message,
PARSE_JSON($1):channel
from @sf_tut_stage/sample.json t
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22987 次 |
| 最近记录: |