SQL:浮点数到小时格式

max*_*y56 9 sql sql-server sql-server-2008

是否有一种简单的方法可以在Ms SQL Server 2008中以小时为单位格式化浮点数?

例子:

  • 1.5 - > 01:30
  • 9.8 - > 09:48
  • 35.25 - > 35:15

非常感谢.

Yuc*_*uck 6

我喜欢这个问题!

DECLARE @input float = 1.5;

DECLARE @hour int = FLOOR(@input);
DECLARE @minutes int = (SELECT (@input - FLOOR(@input)) * 60);

SELECT RIGHT('00' + CONVERT(varchar(2), @hour), 2) + ':' + RIGHT('00' + CONVERT(varchar(2), @minutes), 2);
Run Code Online (Sandbox Code Playgroud)