我的 MS SQL 语法如下:-
select DATEADD(WK, datediff(WK, **1**,'**2018-04-4**'), **1**);
这里我的方法是我正在传递开始日期,即('2018-04-4')和工作日,即1,根据这个公式,它给了我基于当前日期的值工作日
2018-04-03 00:00:00.000
if i am passing **6** result is 2018-04-01 00:00:00.000
if i am passing **0** result is 2018-04-02 00:00:00.000
if i am passing **1** result is 2018-04-03 00:00:00.000
if i am passing **2** result is 2018-04-04 00:00:00.000
if i am passing **3** result is 2018-04-05 00:00:00.000
if i am passing **4** result is 2018-04-06 00:00:00.000
if i am passing **5** result is 2018-04-07 00:00:00.000
现在我的困难是我需要将其迁移到 MySQL 中,但它在那里不起作用。
请提出任何解决方案以获得上述结果。
最佳答案
您可以为此使用 date_Add 和 date_sub。
这为您提供了您即将进入的那一周的第一天,
SELECT DATE_SUB('2018-04-04',INTERVAL WEEKDAY('2018-04-04') DAY);
与日期添加相结合,您可以生成带工作日的日期
select date_add(date_sub('2018-04-04', interval weekday('2018-04-04') day), interval 3 day);
关于mysql - 想要根据给定日期和给定工作日查找周日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49688881/