gpt4 book ai didi

sql - 如何在 Snowflake 中将字符串拆分为字符?

转载 作者:行者123 更新时间:2023-12-02 19:04:16 25 4
gpt4 key购买 nike

我需要将像“abc”这样的字符串拆分成单独的记录,如“a”、“b”、“c”。

这在 Snowflake 中应该很容易:SPLIT(str, delimiter)

但是如果定界符为 null 或空字符串,我将得到完整的 str,而不是我预期的字符。

最佳答案

更新:SQL UDF

create or replace function split_string_to_char(a string)
returns array
as $$
split(regexp_replace(a, '.', ',\\0', 2), ',')
$$
;
select split_string_to_char('hello');

我在处理 Advent of Code 2020 时发现了这个问题.

除了拆分字符串之外,一个可行的解决方案是在所有字符之间添加逗号,然后在逗号处拆分:

select split(regexp_replace('abc', '.', ',\\0', 2), ',')

enter image description here

如果你想用它创建一个表:

select *
from table(split_to_table(regexp_replace('abc', '.', ',\\0', 2), ',')) y

enter image description here

见于 https://github.com/fhoffa/AdventOfCodeSQL/blob/main/2020/6.sql

关于sql - 如何在 Snowflake 中将字符串拆分为字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65257962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com