我正在寻找一种方法,可以帮助我减去几个月从一个日期在Hive我有个约会 2015-02-01 . 现在我需要从这个日期减去2个月,这样结果应该是 2014-12-01 .你们能帮帮我吗?
2015-02-01
2014-12-01
ht4b089n1#
请尝试添加\u months日期函数并将-2传递为months。内部add\u months使用java calendar.add方法,该方法支持加法或减法(通过传递负整数)。https://cwiki.apache.org/confluence/display/hive/languagemanual+udf#languagemanualudf-日期函数
x6h2sr282#
--在hive中,如果日期格式是yyyy-mm-dd格式,就很容易使用月份和年份的差异来自unixtime(unix时间戳(2015-02-01,'yyyy-mm-dd')-230246060,'yyyy-mm-dd');
ux6nzvsh3#
select add_months('2015-02-01',-2);
如果您需要返回到结果月份的第一天:
select add_months(trunc('2015-02-01','MM'),-2);
3条答案
按热度按时间ht4b089n1#
请尝试添加\u months日期函数并将-2传递为months。内部add\u months使用java calendar.add方法,该方法支持加法或减法(通过传递负整数)。
https://cwiki.apache.org/confluence/display/hive/languagemanual+udf#languagemanualudf-日期函数
x6h2sr282#
--在hive中,如果日期格式是yyyy-mm-dd格式,就很容易使用月份和年份的差异
来自unixtime(unix时间戳(2015-02-01,'yyyy-mm-dd')-230246060,'yyyy-mm-dd');
ux6nzvsh3#
如果您需要返回到结果月份的第一天: