mysql查询哪天_查询给定日期所在月的第一个星期一是哪天 sql语句

查询给定日期所在月的第一个星期一是哪天 sql语句

查询给定日期所在月的第一个星期一是哪天 sql语句

declare @date datetime;

set @date = getdate()

--思路,1900-01-01(星期一)加上(给定日志所在月的月6号与1900-01-01差的周数)个周

--为什么不选7号?如果是7号,那么7好恰好是星期日的话,第一个周一就会算到8号。

--为什么不选5号?如果5号是星期六,那么周一就跑到上月了。小于5号与这个道理一样。

select dateadd(week,datediff(week,0,dateadd(day,6-datepart(day,@date),@date)),0) '所在月的第一个星期一'

select dateadd(week,datediff(week,0,dateadd(day,6-datepart(day,@date),@date)),7) '所在月的第二个星期一'

select dateadd(week,datediff(week,0,dateadd(day,6-datepart(day,@date),@date)),1) '所在月的第一个星期二'

select dateadd(week,datediff(week,0,dateadd(day,6-datepart(day,@date),@date)),8) '所在月的第二个星期二'

go

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值