如何获得季度的最后一天在Hive

wribegjk  于 2023-01-25  发布在  Hive
关注(0)|答案(1)|浏览(556)

我试图得到一个季度的第一个和最后一个日期使用Hive。
对于季度的第一天,此方法可以正常工作:

select trunc(add_months(from_unixtime(unix_timestamp()),-(month(from_unixtime(unix_timestamp()))-1)%3),'MM')  as Firstday_quarter

但我无法使用hive检索该季度的最后一天。例如:2021年12月31日在这种情况下
你能帮帮我吗?

wljmcqd8

wljmcqd81#

它不是那么花哨,但我可以得到季度的第一天作为;

hive> SELECT trunc(current_timestamp, 'Q');
OK
2021-10-01

然后根据我刚得到的第一天,加上75天(只是为了确保我是在季度的最后一个月),我可以得到季度/月的最后一天;

hive> select last_day(date_add(trunc(current_timestamp, 'Q'), 75));
OK
2021-12-31

相关问题