hive

本文介绍了SQL中常用的函数及时间操作方法,包括解析URL、时间转换、获取日期与时间信息、使用正则表达式进行字符串操作等。通过具体实例演示了如何在SQL中灵活运用这些工具,为数据处理与分析提供了有力的支持。

相关文档

查看函数

show functions;

desc functions 函数名


parse_url

parse_url(url,partToExtract)

解析url字符串,partToExtract的选项包含(HOST,PATH,QUERY,REF,PROTOCOL,FILE,AUTHORITY,USERINFO)

举例:

* parse_url('http://facebook.com/path/p1.php?query=1', 'HOST')返回'facebook.com' 
* parse_url('http://facebook.com/path/p1.php?query=1', 'PATH')返回'/path/p1.php'  <pre class="sql" name="code">
hive> select parse_url(‘http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1′, ‘QUERY’, ‘k1′) from dual;
v1
 

时间函数

获取当前日期 unix_timestamp()

select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss') from t1;

获取第几周

weekofyear()


获取星期几可以使用以下函数

pmod(datediff('dateTimeExp', '2012年任意一个星期天的日期'), 7) 

字符串函数

正则表达式替换函数  regexp_replace

语法: regexp_replace(string A,string B,string C)

返回值: string

说明: 将字符串A中的符合java正则表达式B的部分替换成C.注意,有些情况写要使用转意字符

举例:

hive> select regexp_replace('foobar','oo|ar','') from t1;
fb

正则表达式解析函数; regexp_extract

语法: regexp_extract(string subjext,string pattern,int index)

返回值: string

说明: 将字符串subject按照parttern正则表达式的规则拆分,返回index指定的字符。注意,在有些情况下要转义字符

举例:

hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 1) from dual;
the
hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 2) from dual;
bar
hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 0) from dual;
foothebar

json解析函数:get_json_object

语法: get_json_object(string json_string, string path)
返回值: string
说明:解析json的字符串json_string,返回path指定的内容。如果输入的json字符串无效,那么返回NULL。










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值