sql >> Base de Datos >  >> RDS >> Mysql

MYSQL Agregar días hábiles hasta la fecha

Prueba esto:

SELECT DATE_ADD(
    date_field,
    INTERVAL 5 + 
    IF(
        (WEEK(date_field) <> WEEK(DATE_ADD(date_field, INTERVAL 5 DAY)))
        OR (WEEKDAY(DATE_ADD(date_field, INTERVAL 5 DAY)) IN (5, 6)),
        2,
        0)
    DAY
    ) AS FinalDate
FROM `table_name`;

Cómo funciona:

  • En primer lugar, agregará 5 días a su fecha.
  • En segundo lugar, cuando date_field y 5 días después están en dos semanas diferentes, se deben agregar 2 días adicionales.
  • En tercer lugar, cuando 5 días después es Sat o Sun , se debe agregar 2 días adicionales.