【发布时间】:2020-05-10 08:17:40
【问题描述】:
我正在尝试修复数据集中的数组。目前,我有一个数据集,其中包含多个不同 uuid 的参考号。我想做的是在 Snowflake 中将其展平以使其成为参考号,每个 uuid 都有单独的行。例如
Reference UUID
1) 9f823c2a-ced5-4dbe-be65-869311462f75 "[
""05554f65-6aa9-4dd1-6271-8ce2d60f10c4"",
""df662812-7f97-0b43-9d3e-12f64f504fbb"",
""08644a69-76ed-ce2d-afff-b236a22efa69"",
""f1162c2e-eeb5-83f6-5307-2ed644e6b9eb"",
]"
最终应该看起来像:
Reference UUID
1) 9f823c2a-ced5-4dbe-be65-869311462f75 05554f65-6aa9-4dd1-6271-8ce2d60f10c4
2) 9f823c2a-ced5-4dbe-be65-869311462f75 df662812-7f97-0b43-9d3e-12f64f504fbb
3) 9f823c2a-ced5-4dbe-be65-869311462f75 08644a69-76ed-ce2d-afff-b236a22efa69
4) 9f823c2a-ced5-4dbe-be65-869311462f75 f1162c2e-eeb5-83f6-5307-2ed644e6b9eb
我刚开始在 Snowflake 工作,所以我是新手。看起来有一个横向变平,但这要么不能告诉我我有各种各样的错误。雪花的文档在这方面有点令人困惑。
【问题讨论】:
-
是的,您需要将数组传递给 Flatten 表函数以分解这些值。您是否能够发布源文件 sn-p(JSON?)或者您从表中列出的那些条目是否已经在 Snowflake 中?理解这一点将有助于所需的语法。
-
正如 Mike 所指出的,通常将此类列表存储在 JSON 的变体列中。如果 UUID 列实际上是一个字符串,我测试了将解析并在解析后的字符串上执行横向连接的代码。如果您想查看 UUID 列不是变体类型的示例,请告诉我。
标签: sql arrays snowflake-cloud-data-platform snowflake-schema snowflake-task