数据转换从时间数据类型证明是棘手的

时间:2016-07-28 19:04:27

标签: sql-server

如何将时间数据类型转换为浮点数以提供小时数?

https://msdn.microsoft.com/en-us/library/ms191530.aspx

Sql server 2012

我有一个名为Overtime的列,它是一个时间数据类型。所以它将是1:02或类似的东西。我想要的是1.03小时。我试图将它转换为INT,但它给了我一个错误。

2 个答案:

答案 0 :(得分:1)

试试这个

DECLARE @overtime time  
set @overtime = getdate() 
select CONVERT(varchar(15),@overtime,100)

答案 1 :(得分:1)

我认为这就是你要找的东西:

DECLARE @overtime time  
set @overtime = '1:02'
Select @overtime 
select DatePart(Hour,@overtime) + DatePart(Minute, @overtime) / Convert(Decimal(38,20), 60)