Я хочу получить полный ISOweek года с 1 января до 52-й недели года.Как получить ISOweek и дату начала и окончания каждой недели в течение всего года с использованием сервера sql
, и я хочу получить начальную и конечную дату каждую неделю.
У меня есть сценарий здесь, но я не получаю выход, который я хочу
Сценарий:
Declare @starttime datetime
Declare @endtime datetime
Set @starttime = '2015-01-01 10:50:29.293'
Set @endtime = '2015-12-31 10:50:29.293'
declare @time datetime
while @endtime > @starttime
begin
print DATEPART(Week,@starttime)
print @starttime
set @time = DATEADD(DAY, 6,@starttime)
If @time<@endtime
Begin
print @time
print DATEPART(Week,@time)
set @starttime = DATEADD(DAY, 1,@time)
End
Else
begin
print @endtime
print DATEPART(Week,@endtime)
set @endtime = @starttime
End
end
Выход:
1 --> this is the week of the @Starttime
Jan 1 2015 10:50AM -->@starttime
Jan 7 2015 10:50AM -->@endtime
2 --> this is the week of the endtime
.... ...........
51
Dec 17 2015 10:50AM
Dec 23 2015 10:50AM
52
52
Dec 24 2015 10:50AM
Dec 30 2015 10:50AM
53
до конца года.
Я хочу, чтобы мой выход, чтобы быть, как это
образца:
1 --> this is the week of the @Starttime
Jan 1 2015 10:50AM -->@starttime
Jan 3 2015 10:50AM -->@endtime
1 --> this is the week of the @endtime
Я хочу мой время_запуска быть firstdate моей недели и моей EndTime быть lastdate из неделя до конца года.
Не могли бы вы помочь мне в этом?
Спасибо за идею. Бог благословил :) – Novice