hive分区表从每日时间戳开始按月分区?

vhmi4jdf  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(626)

有没有可能像这样创建分区 01 从日期开始 2017-01-02' 哪里 01 是一个月吗?我有每天的销售记录,我需要这样做查询 select * from sales where month = '01' . 所以,如果我能按月份划分每日销售额会更好,但我的数据有日期格式 2017-01-01 做什么 create table tl (columns ......) partitioned by (date <datatype> ) 每天都会创建分区,这是我最不想要的。我需要动态创建分区。

p1iqtdky

p1iqtdky1#

caution:- you 需要在create语句中转义date列(在列名周围使用即倒勾)。因为date是配置单元中的数据类型。 您可以创建分区namically:- by 在查询中设置以下参数。set hive.exec.dynamic.partition.mode=nonstrict;同时,您只需要从源代码中选择月份部分table:-insert into table sales partition(date) select columns...,SUBSTR(date,5,2) from source_table这个insert语句将创建类似的分区。 显示分区销售date=01 date=02 date=03 date=04`

相关问题