# DATE\_ADD

将指定单位的时间间隔添加到给定时间戳。通过使用负间隔值可以执行减法。

## 语法

```
DATE_ADD(UNIT, VALUE, TIMESTAMP)
```

## 参数

#### UNIT

类型：`string`

要添加的时间单位。

其可为以下项之一：

* `year`
* `quarter`
* `month`
* `week`
* `day`
* `hour`
* `minute`
* `second`
* `millisecond`

#### VALUE

类型：`bigint`

要添加到 `TIMESTAMP` 的 `UNIT` 的整数值。

可以是正数（表示将来时间）或负数（表示过去时间）。

#### TIMESTAMP

类型：`timestamp`

要修改的时间戳。

## 返回

类型： `timestamp`

已将给定 `NUMBER` 的 `INTERVAL` 添加到其中的 `TIMESTAMP`。

***

## 示例

| UNIT | 值 | TIMESTAMP | 输出 |
| --- | --- | --- | --- |
| 日 | 1 | `2001-08-22 03:04:05.321` | `2001-08-23 03:04:05.321` |
| 年 | 5 | `2001-08-22 03:04:05.321` | `2006-08-22 03:04:05.321` |
| second | 30 | `2001-08-22 03:04:05.321` | `2001-08-22 03:04:35.321` |
| 季 | 1 | `2001-08-22 03:04:05.321` | `2001-11-22 03:04:05.321` |
| 季 | -1 | `2001-08-22 03:04:05.321` | `2001-05-22 03:04:05.321` |
| 季 | 0 | `2001-08-22 03:04:05.321` | `2001-08-22 03:04:05.321` |
| 年 | 1 | `null` | `null` |