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 为需要拆分的字段
-
10年明锐多久换皮带?
10年明锐10万公里左右换皮带,发动机正时皮带的主要作用是驱动发动机的配气机构使引擎进、排气门在适当的时候开启或关闭,以保证发动机气缸能够正常地吸气和排气。10年明锐是上汽大众...
问答查看全文>> -
自动挡的车怎么操作怎么开
第一步,有驾照会开车。第二步用钥匙点火,等到仪表盘上的灯和显示数字都亮起来,这样就算启动成功了。第三步就是踩刹车,这个时候的档位在P档,这就是停车挡,如...
问答查看全文>> -
大众高尔夫雾灯怎么关不了?
高尔夫雾灯的开关位于方向盘左侧的拨杆上,转动拨杆即可开关雾灯,关不了可能是因为不少车主将日行灯误认为雾灯。雾灯的作用就是在雾天或者雨天能见度受天气影响较大的情况下让其他车辆看见...
问答查看全文>> -
奔驰e350落地价多少钱?
奔驰e350厂家报价是 74.80万元:1、2020款奔驰GLE350远程发动机启动,前程尽在掌握,使用 Mercedes me 应用程序启动车辆发动机,可对车内进行加热或冷却...
问答查看全文>>
推荐
- 1长城哈弗h6运动版6at变速箱怎么样333
- 2逾期未年检仍上路行驶的车辆会怎样?198
- 3手动挡汽车下坡怎么起步246
- 4车辆交强险如何过户?296
- 5博尔塔拉职业技术学院可以专升本吗199
- 6绿茶柠檬水的正确泡法417
- 72.4君越开空调车抖动是什么原因?146
- 81500以内性价比最高的手机 1500元左右的手机哪款性价比最高187