presto与hive字符串常用操作(字符串截取、字符串拼接、字符串分割)

本文介绍了Presto和Hive中的字符串处理函数,包括substr用于字符串截取,position查找子串首次出现位置,concat进行字符串连接,以及split进行字符串分割。这些函数在数据处理和分析中非常实用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、字符串截取substr
presto

substr(string, start, length) → varchar   如: select substr('1599319787151',1,10) 

功效:返回字符串A从下标start位置开始,长度为len的字符串

substr(string, start) → varchar        如: select substr('1599319787151',1)

功效:返回字符串A从下标start位置到结尾的字符串

ps:对String来说,初始下标是1,也可以用0;第n个字母下标是n;倒数第m个字母下标是length-m

hive:substr和substring都可以使用,与presto基本一致

2、字符串首次出现位置position(下标从1开始的)
presto

position(substring IN string) → bigint  如:select position('aa' in '15993aa1978715aa1') 

hive:select INSTR('15993aa1978715aa1','aa')  

3、字符串连接concat
presto:concat(string1, ..., stringN) → varchar  如:select  concat('kk','rrr')

hive:concat,还有concat_ws按分隔符分割,如:select concat_ws("-","iii","rrr","kkk")

4、字符串分割split
presto语法:

split(string, delimiter) -> array(varchar)  如:SELECT split('a,b,c,d',',')  得到:[a, b, c, d]

split_part(string, delimiter, index) → varchar 如:SELECT split_part('a,b,c,d',',',2)  得到:b
 

https://prestodb.io/docs/current/functions/string.html
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值