mysql 拼接字符串

mysql拼接字符串是什么呢?不知道的小伙伴来看看小编今天的分享吧!

一、Oracle数据库按分隔符拆分字符串

1、应用函数

REGEXP_SUBSTR

2、语法

REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)

3、参数解释

__srcstr :需要进行正则处理的字符串

__pattern :进行匹配的正则表达式

__position :起始位置,从第几个字符开始正则表达式匹配(默认为1)

__occurrence :标识第几个匹配组,默认为1

__modifier :模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)

4、测试SQL

select regexp_substr('1,2,3','[^,]+',1,1) result from dual;

运行结果:

1select regexp_substr('1,2,3','[^,]+',1,1) result from dual;

5、REGEXP_SUBSTR+CONNECT BY 使用

按分隔符拆分字符串+CONNECT BY 动态参数
测试SQL:

SELECT

REGEXP_SUBSTR ('1,2,3,4,5', '[^,]+', 1,ROWNUM)

FROM dual

CONNECT BY ROWNUM <= LENGTH( '1,2,3,4,5' ) - LENGTH(regexp_replace('1,2,3,4,5', ',', '' )) + 1

二、hive数据库按分隔符拆分字符串

1,split()函数

定义

split()函数是用于切分数据,也就是将一串字符串切割成了一个数组

语法

语法:split(string str, string pat)
返回值:数组类型array

参数解释

string str :待分割字符串
string pat:分割符

测试SQL:

select split ('wo,shi,xiao,ming',',');

运行结果:

["wo","shi","xiao","ming"]

2、explode函数

定义

explode()函数是用于打散行的函数,将一行的数据拆分成一列

语法

explode(array/map类型)
select explode(array_col) as new_col from table_name

测试SQL:

select explode(array("wo","shi","xiao","ming")) as word;

运行结果:

wo

shi

xiao

ming

explode函数的局限性

不能关联原有的表中的其他字段

不能与group by、cluster by、distribute by、sort by联用

不能进行UDTF嵌套

参数只能是两种类型

一个select后面只能获得一个explode产生的视图,如果要显示多个列,则需要将多个视图合并。

3、lateral view

定义:

Lateral View用于和UDTF函数(explode、split)结合来使用

首先通过UDTF函数拆分成多行,再将多行结果组合成一个支持别名的虚拟表。虚拟表相当于再和主表关联, 从而达到添加“UDTF生成的字段“以外字段的目的, 即主表里的字段或者主表运算后的字段。

主要解决在select使用UDTF做查询过程中,查询只能包含单个UDTF,不能包含其他字段、以及多个UDTF的问题

语法:

lateral view UDTF(expression) table_view as new_column;

参数解释:

UDTF(expression):复合逻辑规则的UDTF函数,最常用的explode

table_view : 对应的虚拟表的表名

new_col: 虚拟表里存放的有效字段

测试:

select col_type -- 已拆分数据

from table_name

lateral view explode(split(col,',')) t as col_type --col 为需要拆分的字段

以上就是小编今天的分享了,希望可以帮助到大家。

标签:mysql 拼接字符串

免责声明:本内容来自橡树街平台创作者或收集于互联网公开资源,不代表橡树街网的观点和立场。如有侵权内容,请联系我们删除。联系邮箱:ihuangque@qq.com
相关推荐
mysql安装后怎么使用
2022-08-05
mysql安装后怎么使用
mysql删除用户
2022-08-05
mysql删除用户
mysqldump导出数据库
2022-08-05
mysqldump导出数据库
mysql官网怎样下载64位安装版
2022-08-05
mysql官网怎样下载64位安装版
mysql重启服务命令
2022-08-05
mysql重启服务命令
mysqldump命令详解
2022-08-05
mysqldump命令详解
mysql 获取当前时间
2022-08-05
mysql 获取当前时间
mysql 存储过程 语法
2022-08-05
mysql 存储过程 语法
mysql获取当前日期
2022-08-05
mysql获取当前日期
mysql 拼接字符串
2022-08-05
mysql 拼接字符串
手机老是弹出广告怎么解决
2022-08-05
手机老是弹出广告怎么解决
小爱同学怎么判断我喜欢的人喜不喜欢我
2022-08-05
小爱同学怎么判断我喜欢的人喜不喜欢我
安卓手机如何打开.kmz文件
2022-08-05
安卓手机如何打开.kmz文件
苹果手机文件管理在哪里
2022-08-05
苹果手机文件管理在哪里
安卓手机如何打开.sav文件
2022-08-05
安卓手机如何打开.sav文件
肉桂粉什么味道
2022-07-28
肉桂粉什么味道
欢乐本是什么意思
2022-07-28
欢乐本是什么意思
长城的尽头为什么在海里
2022-07-28
长城的尽头为什么在海里
绿竹米是染色的还是天然的
2022-07-28
绿竹米是染色的还是天然的
中秋有哪些风俗代表什么
2022-07-28
中秋有哪些风俗代表什么
秋葵是什么时候上市的菜
2022-07-28
秋葵是什么时候上市的菜
龟苓膏变质是什么样子
2022-07-28
龟苓膏变质是什么样子
青蟹放冰箱冻死能不能吃
2022-07-28
青蟹放冰箱冻死能不能吃
洗发水里的硅油真的是洪水猛兽吗
2022-07-28
洗发水里的硅油真的是洪水猛兽吗
聚酯纤维和棉哪个好
2022-07-28
聚酯纤维和棉哪个好