2013-10-12 2 views
1

В настоящее время я пытаюсь превратить поле Datetime в поле Year + Week. то, что у меня есть следующаяDatetime to Year + Week в SQL

CreateDate 
------------------------ 
2012-08-15 07:22:56.000 
2012-11-16 10:10:00.000 
2013-01-22 08:47:37.000 
2013-01-22 08:55:18.000 
2013-01-22 09:00:38.000 
2013-01-29 16:26:25.000 

и я хочу это

Weekstamp 
------------------------ 
2013-32 
2013-33 
2013-34 
2013-35 
2013-36 
2013-37 
2013-45 

может кто-нибудь показать мне, как это делается? Большое спасибо.

ответ

2

Используйте этот код

 select (cast(Year(YourDateTimeColumn) as varchar(4))+'-'+cast(datepart(wk,YourDateTimeColumn) as varchar(2))) Weekstamp from YourTableName 
+0

Это выглядит правильно, но я получаю сообщение об ошибке: «Неделя» (также «wk») не является признанным встроенным именем функции ». Любые другие идеи? – samthebrand

1

Спасибо за ответы, вот немного лучше подход, который я нашел.

convert(varchar, year(CreateDate)) + '-' +right('0' + convert(varchar, datepart(iso_week, CreateDAte)),2) as Weekstamp 
Смежные вопросы