如何在mysql选择查询中从日期名称(星期日,星期一等)获取大于或等于今天的日期

时间:2016-07-14 06:52:29

标签: php mysql

如果今天的日期是14-07-2016而日期名称是星期四

如果表格栏中的日期名称是星期一,那么查询应该返回日期是18-07-2016(Beacuase Todaye是星期四。)

如果表格列中的日期名称是 日是星期二,然后日期是19-07-2016, 如果 Day是Wednessday,然后日期是20-07-2016 如果 日是星期四,然后日期是14-07-2016 如果 日是星期五,然后日期是15-07-2016 如果 日是星期六,然后日期是16-07-2016 如果 日是星期日,日期是17-07-2016

我已使用此查询

SELECT *, STR_TO_DATE(CONCAT(YEAR(NOW()),WEEK(NOW(),1), weekday), '%X%V %W') as edate, From table_event

在此查询中 它工作正常,但它返回过去的日期,我不需要过去的日期,我只需要将来的日期

所以请尽快指导我。 在此先感谢

1 个答案:

答案 0 :(得分:0)

我已经尝试了更多次,然后我得到了最后的答案

SELECT *,IF(( STR_TO_DATE(CONCAT(YEAR(NOW()),WEEK(NOW(),1),工作日),'%X%V%W')> = CURDATE()),STR_TO_DATE(CONCAT(YEAR(NOW()) ,周(NOW(),1),工作日),'%X%V%W'),( DATE_ADD(STR_TO_DATE(CONCAT(YEAR(NOW()),WEEK(NOW(),1),工作日),'%X%V%W'),INTERVAL 7 天 ) ) )AS edate FROM tbl_event

此查询的输出是,请注意今天的日期是14-07-2016。 Query Result

这段代码工作正常,它是经过测试的代码。 感谢。