SQL2005 varchar时间类型 怎么相减 得到分钟数。
有一个表,有两列 varchar类型的时间,长度是varchar(12)。这两列 怎么相减得到分钟数。
sql 有什么可以把字符类型时间 装为 datetime类型的语句嘛。 sql 类型转换
[解决办法]
declare @x1 varchar(12),@x2 varchar(12)
select @x1='201310101232',@x2='201310101331'
select datediff(mi,
cast(left(@x1,4)+'-'+substring(@x1,5,2)+'-'+substring(@x1,7,2)+' '+substring(@x1,9,2)+':'+substring(@x1,11,2)+':00' as datetime),
cast(left(@x2,4)+'-'+substring(@x2,5,2)+'-'+substring(@x2,7,2)+' '+substring(@x2,9,2)+':'+substring(@x2,11,2)+':00' as datetime)) '分钟数'
/*
分钟数
-----------
59
(1 row(s) affected)
*/