2016-09-07 3 views
0

В SQL Server я хотел бы получить час года (от 1 до 8760) из значения datetime. Есть идеи, как это сделать? Большое спасибо!SQL Server: Получить час года с даты и времени

Пример (DateTime в формате гггг-мм-дд-чч-мм-сс)

Input: datetime => Output: hour_of_year 
---------------------------------------- 
2015-01-01 01:00:00 => 1 
2015-01-01 02:00:00 => 2 
2015-01-02 01:00:00 => 25 
2015-02-15 08:00:00 => 1088 
2015-12-31 22:00:00 => 8758 
2015-12-31 23:00:00 => 8759 

ответ

2

Вы можете использовать DATEPART:

SELECT DATEPART(DAYOFYEAR,GETDATE())*24 + DATEPART(HOUR,GETDATE()) 
+0

спасибо, Lamak! – Simon

0
SELECT DATEDIFF (hour, DATEADD(yy, DATEDIFF(yy,0,GETDATE()), 0), GETDATE()) 
Смежные вопросы