赞
踩
--获得12个月的维表(每月+每月最后一天) --hive无法使用类似oracle的dual的虚拟表,所以需要先创建一个月份维表 --先删除,建议表名后加上该月日期,避免重复使用 drop table temp_dual1; --创建维表并插入当月的1号 create table temp_dual1 (id string); insert into temp_dual1 values(${month_id}||'01');--其中${month_id}为调度时间变量 --删除要使用的日期维表 drop table temp_purchase_RESERVE_${month_id}; --开始创建 create table temp_purchase_RESERVE_${month_id} as select concat(substr(a.last_day,1,4),substr(a.last_day,6,2),substr(a.last_day,9,2)) as date1, concat(substr(add_months(a.last_day,-1),1,4),substr(add_months(a.last_day,-1),6,2),substr(add_months(a.last_day,-1),9,2)) as date2, concat(substr(add_months(a.last_day,-2),1,4),substr(add_months(a.last_day,-2),6,2),substr(add_months(a.last_day,-2),9,2)) as date3, concat(substr(add_months(a.last_day,-3),1,4),substr(add_months(a.last_day,-3),6,2),substr(add_months(a
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。