实现“hive求上月末”流程
流程图
stateDiagram
[*] --> 输入日期
输入日期 --> 判断日期格式
判断日期格式 --> 提取上月日期
提取上月日期 --> 求上月末
求上月末 --> 输出结果
输出结果 --> [*]
甘特图
gantt
title 实现“hive求上月末”流程
section 设计
判断日期格式 :des1, 2021-09-01, 2d
提取上月日期 :des2, after des1, 2d
求上月末 :des3, after des2, 2d
输出结果 :des4, after des3, 2d
步骤及代码
步骤 | 操作 | 代码 |
---|---|---|
输入日期 | 输入当前日期 | |
判断日期格式 | 判断日期格式 | |
提取上月日期 | 提取上月日期 | ```sql |
select | ||
date_add(from_unixtime(unix_timestamp(${input_date},'yyyy-MM-dd'),'yyyy-MM'),-1) as last_month | ||
``` | ||
求上月末 | 求上月末 | ```sql |
select | ||
last_day(from_unixtime(unix_timestamp(${last_month},'yyyy-MM-dd'))) as last_day_of_last_month | ||
``` | ||
输出结果 | 输出结果 |
说明
- 输入日期为当前日期,格式为yyyy-MM-dd。
- 判断日期格式可使用Hive中的日期函数进行判断,确保日期格式正确。
- 提取上月日期使用date_add函数将当前日期减去一个月。
- 求上月末使用last_day函数得到上月最后一天的日期。
- 最终输出结果为上月最后一天的日期。
通过以上步骤及代码,你可以成功实现“hive求上月末”的操作。希望你能够理解并掌握这一过程,加油!