前言

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 favsid
    union 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 

结果如下:

useriduser_namefavsid
1458963小花8
1258963小明10
3245895小翠

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部