当前位置:家常菜>百科>科技>正文

mysql 拼接字符串

人气:256 ℃/2025-02-01 09:04:02

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 为需要拆分的字段

  • 菜花什么时候收获

    菜花什么时候收获,一起来看看小编今天的分享吧。1、春菜花春菜花应在12月下旬在温室内培育,因为春季温度低,种子萌发时间长,幼苗生长缓慢。然后应在3月左右进行移植和种植。如果是露...

    生活查看全文>>
  • 凌渡多久保养一次

    一般汽车常规的保养项目包括更换机滤和机油,更换周期为5000公里或者是六个月,大众旗下的汽车一般都是每行驶7500千米就需要做一次常规保养的。凌渡是上海大众汽车公司在2014年...

    问答查看全文>>
  • 百戏之祖之称的剧种是

    百戏之祖之称的剧种是?下面就让我们一起来了解一下吧:“百戏之祖”指的是昆曲,昆曲是汉族传统戏曲中最古老的剧种之一。昆曲原名“昆山腔”,简称“昆腔”,现又被称为“昆剧”,昆曲是中...

    教育查看全文>>
  • 励志温暖文案(励志温暖文案精选句子简短)

    1、生活不是一种态度,而是一种选择。不去追逐永远不会拥有。不往前走,永远原地停留!2、如果你想成为那种不声不响,但是什么都做得很好的人,那你就要默默努力,实现每一个自己吹过的牛...

    句子查看全文>>
  • 乌龙茶的主要保健功效

    乌龙茶的主要保健功效为消除油腻,缓解脂肪,通便利尿,促进代谢,能缓解肌肉紧张,帮助消化,镇定情绪等,同时还能补充身体所需维生素以及蛋白质,起到缓解口渴,生津去疲的作用,长期饮用...

    茶叶查看全文>>
本网站部分内容、图文来自于网络,如有内容侵犯您的合法权益,请及时与我们联系,我们将第一时间安排核实及删除!
CopyRight © 2007-2024 家常菜 All Rights Reserved. 手机版