mysql 加减时间排除周末
时间: 2023-10-13 09:13:18 浏览: 122
MySQL日期数据类型、时间类型使用总结
5星 · 资源好评率100%
如果你想在 MySQL 中进行加减日期操作并排除周末,可以使用 `DATE_ADD()` 和 `DATE_SUB()` 函数结合 `WEEKDAY()` 函数来实现。
例如,如果你想将某个日期加上两个工作日,可以使用以下语句:
```
SELECT DATE_ADD(date, INTERVAL 2 DAY +
IF(WEEKDAY(date + INTERVAL 1 DAY) = 5, 2, 0) +
IF(WEEKDAY(date + INTERVAL 2 DAY) = 6, 1, 0)) as new_date
FROM table_name;
```
其中 `date` 是要进行加减操作的日期,`INTERVAL 2 DAY` 表示要加上两天,`IF(WEEKDAY(date + INTERVAL 1 DAY) = 5, 2, 0)` 表示如果加上一天后是周五,则要再加上两天(相当于跳过周末),`IF(WEEKDAY(date + INTERVAL 2 DAY) = 6, 1, 0)` 表示如果加上两天后是周六,则要再加上一天(同样相当于跳过周末)。
如果你需要减去工作日,可以使用 `DATE_SUB()` 函数,并将 `INTERVAL` 的值改为负数即可。
阅读全文