GreenPlum学习笔记:split_part与string_to_array字符截取

  偶遇一个需求:想按某个指定符号分割之后,提取字符。

  例如:tag = '休闲,娱乐,运动,玩耍',想提取"休闲"这个词。

方法一:string_to_array

select string_to_array('休闲,娱乐,运动,玩耍','');
------------------------------
-- {休闲,娱乐,运动,玩耍}
-- (1 row)
select tag[1] from (
    select string_to_array('休闲,娱乐,运动,玩耍','')
 as tag ) a
---------------------
-- 休闲
-- (1 row)

如此实现,但是string_to_array需要子查询,当与其他自动group by一起查询的时候就显得及其不方便,因此可使用方法二。

方法二:split_part

复制代码
select split_part('休闲,娱乐,运动,玩耍','',1);
-----------------
-- 休闲
-- (1 row)

select split_part('abc~@~def~@~ghi','~@~',2)
-----------------
-- def
-- (1 row)
复制代码

END 2018-08-01 17:03:18

 

posted @   Hider1214  阅读(4024)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示