mysql 时间函数加减
时间: 2024-09-12 14:01:19 浏览: 54
MySQL中的时间函数可以用来执行日期和时间的加减操作。以下是几个常用的时间函数和它们的使用方法:
1. `DATE_ADD(date, INTERVAL expr type)` 和 `DATE_SUB(date, INTERVAL expr type)`:
这两个函数用于对日期进行加减操作。`DATE_ADD` 函数是向日期添加一个时间间隔,而 `DATE_SUB` 函数则是从日期中减去一个时间间隔。
- `date` 是起始日期或时间。
- `expr` 是要加到日期上的时间间隔,或者从日期中减去的时间间隔。
- `type` 是时间间隔类型,比如 `SECOND`、`MINUTE`、`HOUR`、`DAY`、`MONTH`、`YEAR` 等。
例如:
```sql
SELECT DATE_ADD('2023-01-01', INTERVAL 1 DAY); -- 加一天
SELECT DATE_SUB('2023-01-01', INTERVAL 1 MONTH); -- 减去一个月
```
2. `ADDDATE()` 和 `SUBDATE()`:
这两个函数分别与 `DATE_ADD()` 和 `DATE_SUB()` 功能相同,可以用于日期的加减操作。
示例:
```sql
SELECT ADDDATE('2023-01-01', INTERVAL 1 YEAR); -- 加一年
SELECT SUBDATE('2023-01-01', INTERVAL 1 HOUR); -- 减去一个小时
```
3. `ADDTIME()` 和 `SUBTIME()`:
- `ADDTIME(expr1, expr2)`:返回expr1加上expr2的时间。
- `SUBTIME(expr1, expr2)`:返回expr1减去expr2的时间。
示例:
```sql
SELECT ADDTIME('2023-01-01 10:00:00', '01:01:01'); -- 时间加法
SELECT SUBTIME('2023-01-01 10:00:00', '01:01:01'); -- 时间减法
```
4. `TIMESTAMPADD()` 和 `TIMESTAMPDIFF()`:
- `TIMESTAMPADD(type, interval, date)`:增加指定的时间间隔到一个日期或时间值。
- `TIMESTAMPDIFF(type, date1, date2)`:返回两个日期或时间值之间的时间间隔差。
示例:
```sql
SELECT TIMESTAMPADD(MONTH, 1, '2023-01-01'); -- 日期加一个月
SELECT TIMESTAMPDIFF(YEAR, '2023-01-01', '2024-01-01'); -- 两个日期之间的年份差异
```
阅读全文