小编典典

在SQL Server 2008 R2中获取年,日和小时的日期时间

sql

我在Microsft SQL Server 2008 R2中有一张表,该表来自外部。的列如下:ID, Year, DAY, HOUR & Value,其中DAY包含一年中的某一天(从1到366),并HOUR代表一天中的小时(从0到23)。

我希望创建一个新的datetime列,并使用从Year, DAY & HOUR列中的数据创建的dateTime进行填充。

我应该使用什么SQL函数DateTime来从其部分创建?

SQL Server 2012具有DATETIMEFROMPARTS,但没有SQL Server 2008
R2的
等效功能


阅读 216

收藏
2021-04-22

共1个答案

小编典典

declare @Year int = 2003
declare @Day int = 100
declare @Hour int = 13

select dateadd(hour, @Hour, dateadd(dayofyear, @Day - 1, dateadd(year, @Year - 1900, 0)))
2021-04-22