declare @d date ='2015-01-01';
declare @d2 date=dateadd(yy,1,@d);
declare @d1 date;
declare @t table(d date);
set @d1=dateadd(d,6-datepart(dw,@d),@d);
if(@d1<@d)
set @d=dateadd(dd,7,@d);
while @d1<@d2
begin
insert into @t values(@d1);
set @d1=dateadd(dd,7,@d1);
end
declare @d2 date=dateadd(yy,1,@d);
declare @d1 date;
declare @t table(d date);
set @d1=dateadd(d,6-datepart(dw,@d),@d);
if(@d1<@d)
set @d=dateadd(dd,7,@d);
while @d1<@d2
begin
insert into @t values(@d1);
set @d1=dateadd(dd,7,@d1);
end
select d from @t;
-- 日~六
-- 1~7