【发布时间】:2023-01-07 02:48:13
【问题描述】:
【问题讨论】:
-
请以文本形式提供源 JSON。与尝试从表格图片中的扁平化数据进行逆向工程相比,这将有所帮助。
标签: snowflake-cloud-data-platform
【问题讨论】:
标签: snowflake-cloud-data-platform
我假设您的源 JSON 是这样的:
[
{
"empname": "e1",
"empid": 123
},
{
"empname": "e2",
"empid": 456
}
]
基于此,您可以使用以下方法实现所需的输出:
select
s.value:empname::varchar as empname,
s.value:empid::number as empid
from
json j,
lateral flatten (input => j.src, path => '', mode => 'ARRAY') s
;
完整示例复制代码:
create or replace table json (src variant);
insert into json(src) select parse_json($$
[
{
"empname": "e1",
"empid": 123
},
{
"empname": "e2",
"empid": 456
}
]
$$
);
select * from json;
select
s.value:empname::varchar as empname,
s.value:empid::number as empid
from
json j,
lateral flatten (input => j.src, path => '', mode => 'ARRAY') s
;
【讨论】: