How can I find next Friday's date?

nianzhang747 2009-08-03 09:59:01
假如:
1.今天是星期一 2009/08/03 则下个星期五的日期是2009/08/14
2.加入今天是星期日 2009/08/09 则下个星期五的日期也是2009/08/14
下面的sql语句只是查询了上面的第一种情况,
针对第二种情况没有考虑到
SELECT DATE_ADD(CURRENT_DATE,INTERVAL (6-DAYOFWEEK(CURRENT_DATE)) DAY);
问题:
1.提供一条sql语句不用函数,查询下个星期五的日期。
2.该查询能否实现?
...全文
74 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hitexam 2009-08-03
  • 打赏
  • 举报
回复
有点问题,周日默认为每周的第一天,假如今天是星期天8.9,那么下个礼拜五不应该是8.14而是8.21了。
hitexam 2009-08-03
  • 打赏
  • 举报
回复
试试这个:
select adddate(adddate(curdate(),(5-date_format(curdate(),'%w'))),interval 1 week);
nianzhang747 2009-08-03
  • 打赏
  • 举报
回复
谢谢 高手啊,知道了刚学mysql 还不知道它有if语句。
vinsonshen 2009-08-03
  • 打赏
  • 举报
回复
假如:
1.今天是星期一 2009/08/03 则下个星期五的日期是2009/08/14
2.加入今天是星期日 2009/08/09 则下个星期五的日期也是2009/08/14

----------------------------
则:

SELECT DATE_ADD(CURRENT_DATE,INTERVAL (if(DAYOFWEEK(CURRENT_DATE)=1,6-DAYOFWEEK(CURRENT_DATE),6-DAYOFWEEK(CURRENT_DATE)+7)) DAY); 

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧