SQL:将日期和时间列合并为1个日期时间列
我的数据导入有点混乱,最后出现了以下列:SQL:将日期和时间列合并为1个日期时间列,sql,sql-server,Sql,Sql Server,我的数据导入有点混乱,最后出现了以下列: Date (Type = INT) (DataFormat = 20131231) Time (Type = datetime) (DataFormat = 1899-12-30 13:30:00.000) 最后,我想将Date/Time的1列作为datetime类型,保留现有的日期和时间,是否有方法转换现有列?这里有一种方法: declare @Date int = 20131231 declare @DateTime datetime = '189
Date (Type = INT) (DataFormat = 20131231)
Time (Type = datetime) (DataFormat = 1899-12-30 13:30:00.000)
最后,我想将Date/Time的1列作为datetime类型,保留现有的日期和时间,是否有方法转换现有列?这里有一种方法:
declare @Date int = 20131231
declare @DateTime datetime = '1899-12-30 13:30:00.000'
select dateadd(ms,
datediff(ms, cast(@DateTime as date), @DateTime),
cast(cast(@Date as varchar(8)) as datetime)
)
这里有一种方法:
declare @Date int = 20131231
declare @DateTime datetime = '1899-12-30 13:30:00.000'
select dateadd(ms,
datediff(ms, cast(@DateTime as date), @DateTime),
cast(cast(@Date as varchar(8)) as datetime)
)