1、获取一个日期所在的周开始日期,周结束日期
declare @now datetime = '2021-01-15';
declare @date datetime = convert(date, @now);
declare @start datetime = dateadd(d, 2 - datepart(w, @date), @date),
@end datetime = dateadd(d, 8 - datepart(w, @date), @date) + '23:59:59';
select @start 周开始日期, @now 当前日期 , @end 周末尾日期;
周开始日期 | 当前日期 | 周末尾日期 |
---|
2021-01-11 00:00:00.000 | 2021-01-15 00:00:00.000 | 2021-01-17 23:59:59.000 |
2、获取一个日期所在的月开始日期,月结束日期
declare
@start datetime,
@end datetime,
@now datetime= '2021-01-15'
set @start=convert(varchar(20),year(@now))+'-'+convert(varchar(20),month(@now)) +'-1 00:00:00'
set @end=convert(varchar(20),dateadd(d,-day(@now),dateadd(m,1,@now)),23)+' 23:59:59'
select @start 月开始日期, @now 当前日期 , @end 月末尾日期;
月开始日期 | 当前日期 | 月尾日期 |
---|
2021-01-01 00:00:00.000 | 2021-01-15 00:00:00.000 | 2021-01-31 23:59:59.000 |