如何从 Hive 中的 'yyyy-MM' 日期格式获取上个月
How to get previous month from 'yyyy-MM' date format in Hive
我想从 Hive 中的 'yyyy-MM' 格式值中获取上个月。我尝试使用 'add_months' 但无法获取。
select add_months('2021-06', -1)
例如:我有一个字符串列的值为“2021-06”,现在我想将输出显示为“2021-05”。
请帮忙解决这个问题。
通过连接 '-01'
、add_months
将字符串转换为日期,使用 date_format
得到 yyyy-MM
:
select date_format(add_months(concat('2021-06','-01'), -1),'yyyy-MM')
结果:
2021-05
另一种方法(使用substr
代替date_format
):
select substr(add_months(concat('2021-06','-01'), -1),1,7) --returns 2021-05
我想从 Hive 中的 'yyyy-MM' 格式值中获取上个月。我尝试使用 'add_months' 但无法获取。
select add_months('2021-06', -1)
例如:我有一个字符串列的值为“2021-06”,现在我想将输出显示为“2021-05”。
请帮忙解决这个问题。
通过连接 '-01'
、add_months
将字符串转换为日期,使用 date_format
得到 yyyy-MM
:
select date_format(add_months(concat('2021-06','-01'), -1),'yyyy-MM')
结果:
2021-05
另一种方法(使用substr
代替date_format
):
select substr(add_months(concat('2021-06','-01'), -1),1,7) --returns 2021-05