日期和时间字段组合到SQL Server 2000中的DateTime?

时间:2010-12-06 16:01:03

标签: tsql sql-server-2000

我有2个字段,日期和时间,需要合并到1个日期时间字段中。我已经看过这样做的功能,但它们似乎不能用于我的数据。

日期字符(8):20051101
时间字符(4):1115

需要的结果:日期时间代表2005年11月1日上午11:15

我该怎么做?

1 个答案:

答案 0 :(得分:1)

假设您的数据类型为int,您可以执行以下操作:

declare @d as int
declare @t as int
set @d = 20051101
set @t = 1115
select CAST(cast(@d as varchar) as datetime) + dateadd(hh, cast(left(@t, 2) as int), 0) + dateadd(N, cast(right(@t, 2) as int), 0)

更新了char:

declare @d as char(8)
declare @t as char(4)
set @d = '20051101'
set @t = '1115'
select CAST(@d as datetime) + dateadd(hh, cast(left(@t, 2) as int), 0) + dateadd(N, cast(right(@t, 2) as int), 0)