目录
- 前言
- 基本函数介绍
- 实战
前言
reverse函数,是一个常用的字符串处理函数,很多编程语言都有。最近开发中,遇到一个reverse解决的需求,发现自己尚未总结过,遂补上。
基本函数介绍
SELECT reverse(string_column) FROM table_name;
举例:
SELECT reverse('hello world');
结果为:
dlrow olleh
实战
目前有三个字段,用户id,用户名称,兴趣ID组合,现在的需求是取每个用户,兴趣id组合中最后的一个;
具体实现:
with temp_test as
(select '1458963' as userid ,'小花' as user_name ,'[1,5,8]' as favsidunion all select '1258963' as userid ,'小明' as user_name ,'[3,7,9,10]' as favsid union all select '3245895' as userid ,'小翠' as user_name ,'[]' as favsid
)select
userid
,user_name
,reverse(split(favsid,'\\,')[0]) as favsid
from
(select
userid
,user_name
,regexp_replace(reverse(favsid),'\\[|\\]','') as favsid
from temp_test
) tt
结果如下:
userid | user_name | favsid |
---|---|---|
1458963 | 小花 | 8 |
1258963 | 小明 | 10 |
3245895 | 小翠 |