码迷,mamicode.com
首页 > 其他好文 > 详细

hive 分区时 分别使用 年,月,日 来进行分区

时间:2016-04-28 12:28:56      阅读:1041      评论:0      收藏:0      [点我收藏+]

标签:查询日期分区

创建表

create [external<外联>] table log_app_web (log map<string,string>) partitioned by (year int,month int,day int) 

ROW FORMAT DELIMITED COLLECTION ITEMS TERMINATED BY ‘\t‘ 

MAP KEYS TERMINATED BY ‘=‘ STORED AS ORC;


表名:log_app_web

字段:Map类型字段 log

分区:根据年,月,日 进行分区 year ,month ,day

分割使用 ‘\t‘

MAP中的KV使用 ‘=’

数据文件存储为ORCFILE格式


根据日期范围查询时使用将分期时间转换成日期的string进行范围查询

 concat_ws(‘-‘,cast(year as string),lpad(cast(month as string),2,‘0‘), lpad(cast(day as string),2,‘0‘)) >= ‘"+format.format(StartDay)+"‘ 

类似于 yyyy-MM-dd >= ‘2016-04-28‘


本文出自 “记下就对了” 博客,请务必保留此出处http://jueshizhanhun.blog.51cto.com/4372226/1768500

hive 分区时 分别使用 年,月,日 来进行分区

标签:查询日期分区

原文地址:http://jueshizhanhun.blog.51cto.com/4372226/1768500

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!