Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 减去一年,如果不是当前年份-蜂巢_Date_Hive - Fatal编程技术网

Date 减去一年,如果不是当前年份-蜂巢

Date 减去一年,如果不是当前年份-蜂巢,date,hive,Date,Hive,我在做蜂箱。我几乎没有数据,包括出生日期列,但要求是需要将年份减少1,如果不是当前年份。我被困在这里了。请建议我在Hive中解决此问题。年函数和添加月份将对您有所帮助。希望这有帮助。谢谢 select IF(YEAR(dateofbirth)=YEAR(current_date), dateofbirth , cast(add_months(dateofbirth, -12) as date)) from t Result: dateofbirth minus 1 yr 2016-12

我在做蜂箱。我几乎没有数据,包括
出生日期
列,但要求是需要将
年份
减少
1
,如果不是当前年份。我被困在这里了。请建议我在Hive中解决此问题。

年函数和添加月份将对您有所帮助。希望这有帮助。谢谢

select IF(YEAR(dateofbirth)=YEAR(current_date), dateofbirth , cast(add_months(dateofbirth, -12) as date)) from t

Result:
dateofbirth     minus 1 yr
2016-12-28      2015-12-28

感谢您对添加功能的建议。它也适用于负数以减去月份。请选择“添加月份”('2009-05-31',-1);-->2009-04-30. 请注意,日期是非欧洲日期格式yyyy MM dd