mysql - 添加 date_add 但保留在周末中间

标签 mysql dateadd

我有一个 mysql 查询

SELECT CONCAT('document',LEFT(cases.id,26)) AS 'id',
cases.date_modified,
cases.date_modified,
'67421f0a-3f44-1093-1ab6-51750b508349' AS 'assigned_user','1','1','0',
'complete documentation in 4 Days' AS 'name',
'Not Started',
cases.date_modified,
DATE_ADD(cases.date_modified,INTERVAL 4 DAY) AS 'due date','Cases',cases.id,
'P1','Complete Operations Documentation' AS 'description'
FROM cases
    INNER JOIN cases_cstm
ON ( cases.id = cases_cstm.id_c)
WHERE cases.`assigned_user_id` = '67421f0a-3f44-1093-1ab6-51750b508349'
AND cases.`status` = 'Start Administration'
AND `cases_cstm`.`file_location` = 'Operations'
 ORDER BY `date_modified` DESC
LIMIT 1;

但问题是周二它会在周六出现,周三它会在周日出现 周四或周五人们有 2 天的时间工作?

如何检查周末是否在截止日期内增加 2 天?

问候

最佳答案

尝试这个表达式:

(case when weekday(cases.date_modified) = 0
      then DATE_ADD(cases.date_modified, INTERVAL 4 DAY)
      else DATE_ADD(cases.date_modified, INTERVAL 6 DAY)
  end) as 'due date'

它只是测试一周中的哪一天,然后添加适当的持续时间来度过周末。

关于mysql - 添加 date_add 但保留在周末中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17169672/

相关文章:

mysql - 每隔两行更新一次时间值

MySQL DATE_ADD 间隔

sql-server - 如何在sql server中添加一个小时的时间戳(无需声明)

c# - 更新记录时如何防止数据库中出现重复记录?

mysql - 为什么当等效的 SELECT 有效时,此 DELETE 查询会失败?

mysql - 在 MySQL 多对多表中获取唯一成员资格

mysql - 我被 mysql 的更新困住了

sql - SQL Server 是否优化 select 查询中的 DATEADD 计算?

php - 根据数据库中的数据自动调整文本框的大小

sql - 当我输入 dateadd 或 datediff 代码时,我总是收到此错误 "ORA-00904 "DATEADD“INVALID IDENTIFIER”。