hive的常用函数工作总结
2024-10-20 08:28:08
1、concat_ws
它是一个特殊形式的 CONCAT()
concat_ws(分隔符,参数1,参数2.。。。。。。) as 字段
2、split
返回值为一个数组
a.基本用法:
例1:split('a,b,c,d',',')
得到的结果:["a","b","c","d"]
b.截取字符串中的某个值:
当然,我们也可以指定取结果数组中的某一项
例2:split('a,b,c,d',',')[0]
得到的结果:a
c.特殊字符的处理:
特殊分割符号
regex 为字符串匹配的参数,所以遇到特殊字符的时候需要做特殊的处理
例3: "." 点
split('192.168.0.1','.')
得到的结果:[]
正确的写法:split('192.168.0.1','\\.')
得到的结果:["192","168","0","1"]
需要注意的是:
当然当split包含在 "" 之中时 需要加4个\
如 hive -e ".... split('192.168.0.1','\\\\.') ... " 不然得到的值是null
同样的 | 等特殊符号也需要做类似 处理。
指定多个分隔符时,多个分隔符使用 | 连接
测试:
drop table test;
create table if not exists test(
name string,
age string,
sex string
)row format delimited fields terminated by ','
lines terminated by '\n'
stored as textfile;
load data local inpath '/usr/test.txt' overwrite into table test;
栗子:想通过分割得到name中的li和i,指定;和-两个分隔符;注意分割之后得到的是一个数组array,下标从0开始
select split(a.name,'-|;')[],split(a.name,'-|;')[] from test a ;
最新文章
- Easyui简单布局
- Activity通信的第三方库——EventBus
- Unity模型导入的若干问题
- UTF8-GBK WideCharToMultiByte MultiByteToWideChar
- 使用phpmyadmin导入SQL数据报错:#1062 - Duplicate entry '...
- uva 11916 Emoogle Grid
- Scriptcase演示程序
- 个人Python常用Package及其安装
- 华为Java笔试题
- Ubuntu 12.04 64bit 安装编译GCC 4.1.2 绝对原创
- ip001
- servlet什么时候被实例化?【转】
- C#打印模板设计,E店宝打印模板设置,winfrom打印模板设计,DevExpress.XtraReports.UI.XRTable 表格代码生成。
- 自定义Chrome浏览器
- php分割中文字符串为数组的简单例子
- FuelPHP 系列(五) ------ Security 防御
- swiftlint 你所要知道的所有!!
- CH#46A 磁力块
- spring 默认情况下事务是惟一的 同一个方法里面第一个sql开启后 在执行完 将事务传递给下一个sql
- 没有可用的复制构造函数或复制构造函数声明为“explicit”
热门文章
- 使用springboot mybatis 查询时实体类中的驼峰字段值为null
- malloc,free,calloc,realloc函数
- 基于Mybatis-Plus实现自动化操作创建时间和修改时间
- 可落地的DDD(4)-如何利用DDD进行微服务的划分(2)
- 在Asp.Net Core MVC 3.0 视图运行时编译
- C#拼音帮助类
- Scrapy框架中的xpath选择
- 运维利器1-supervisor
- Java之路---Day19(set接口)
- 使用input的file进行上传进行预览