gpt4 book ai didi

sql按空格将字符串拆分为postgresql中的表

转载 作者:行者123 更新时间:2023-11-29 11:10:33 24 4
gpt4 key购买 nike

我正在寻找类似 regexp_split_to_table 的函数,但我们的数据库是 8.2.9 版,所以没有。我真的只是在一个空间上 split ,所以像这样的字符串

how now brown cow

会回来

+------+
|Column|
+------+
|how |
|now |
|brown |
|cow |
+------+

是否有一个简单的函数可以处理这个问题,或者我必须自己编写什么?

最佳答案

您可以使用 unnest 函数将数组拆分为结果集,您可以使用 string_to_array 函数将字符串文字转换为数组。结合两者,你会得到这个:

alvherre=# select unnest(string_to_array('the quick lazy fox', ' '));
unnest
--------
the
quick
lazy
fox
(4 filas)

由于8.2没有UNNEST,所以在PostgreSQL中可以这样写:

create or replace function unnest(anyarray) returns setof anyelement
language sql as $$
select $1[i] from generate_series(array_lower($1, 1),
array_upper($1, 1)) as i;
$$;

关于sql按空格将字符串拆分为postgresql中的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1986491/

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