如何将日期字段转换为日期时间格式? SQL 2008

时间:2015-04-27 09:53:49

标签: sql-server-2008 datetime

将日期数据类型转换为日期时间数据类型会产生

  

超出范围的价值。

     

声明已经终止。

我只需要将日期字段转换为日期时间格式。

2 个答案:

答案 0 :(得分:1)

将日期转换为datetime2的代码示例

DECLARE @d1 date;
SET @d1 = GETDATE()

-- When converting date to datetime the minutes portion becomes zero.
SELECT CAST (@d1 AS datetime2) AS [date as datetime2]

有关强制转换和转换的详细信息,请参阅Microsoft reference

答案 1 :(得分:1)

您可能超出了范围异常,因为Date支持的日期范围为 January 1, 1 and December 31, 9999,而DateTime仅支持日期范围 January 1, 1753 to December 31, 9999

想知道为什么1753? Read this.(推荐阅读任何喜欢琐事项目的人)

尝试转换为Datetime2而不是Datetime,这应该没问题,因为Datetime2支持类似于日期的日期范围。

转换只需使用CAST

即可完成
SELECT CAST(YourDateTypeColumn As Datetime2)
FROM YourTable