gpt4 book ai didi

sql - 我们如何在Hadoop中截断空格后的文本?

转载 作者:行者123 更新时间:2023-12-02 18:49:33 25 4
gpt4 key购买 nike

我有一列说column_1,其值为:

abc 12edf
hbnm 847
47sf hg41

我需要如下输出:
abc
hbnm
47sf

PS:我对数据库具有只读访问权限

最佳答案

使用regexp_extract(col,'^(.*?)\\s',1)从正则表达式中空格(第1组)之前的字符串开头提取所有内容。
'^(.*?)\\s'的意思是:
^-字符串 anchor 的开头(.*?)-任何次数的任意字符\\s-空间

Demo:
with your_table as (--use your_table instead of this
select stack (3,
'abc 12edf',
'hbnm 847',
'47sf hg41'
) as str
)

select regexp_extract (str,'^(.*?)\\s',1) as result_str
from your_table s

结果:
abc
hbnm
47sf

另一种可能的解决方案是使用 split:
select split (str,' ')[0] as result_str

还有另一种使用 instr + substr的解决方案:
select substr(str,1,instr(str,' ')-1)

关于sql - 我们如何在Hadoop中截断空格后的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58944467/

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