在Hive中处理日期运算时,DATEADD函数是个非常实用的工具。它支持多种时间间隔格式,包括YEAR、QUARTER、MONTH、DAY、HOUR、MINUTE和SECOND等,几乎覆盖了日常所需的所有粒度。

举个例子,若想为某个日期增加一年,可以使用如下语句:
SELECT DATEADD(YEAR, 1, your_date_column) FROM your_table;
类似的,增加10天也同样简单:
SELECT DATEADD(DAY, 10, your_date_column) FROM your_table;
有一个关键点需要特别注意:DATEADD函数的第一个参数是时间间隔类型,第二个参数是要添加的数量,第三个才是要操作的日期列。顺序千万别搞反了。
此外,Hive也支持负的时间间隔——直接用-符号表示。比如要减去一年:
SELECT DATEADD(YEAR, -1, your_date_column) FROM your_table;
这样一来,回溯日期也变得更加得心应手。
