雪花-加入分割功能的结果

时间:2019-11-07 09:20:30

标签: snowflake-data-warehouse

我在使用split函数的结果时遇到问题。 以下查询有效,其中str_field是表my_table中的字符串字段。

select
    *
    from my_table,
        (lateral flatten(input=>split(str_field, ',')));

当我尝试查询拆分的不同值时,出现错误:

  

无效的标识符“ str_field”

select
    *
    from my_table t,
        (select distinct value from lateral flatten(input=>split(t.str_field, ',')));

如何交叉分割str_field的唯一值?我需要获取my_table的所有值,所以select *是必须的(select distinct value是不够的)

2 个答案:

答案 0 :(得分:0)

要获得独特的价值,您需要执行以下操作

select distinct value from my_table,(lateral flatten(input=>split(str_field, ',')));

答案 1 :(得分:0)

使用CTE是可行的解决方案。因此,您的查询应如下所示:

with dist_mytbl as (
select
    distinct value
    from my_table,
        (lateral flatten(input=>split(str_field, ','))))

select * from dist_mytbl;