Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como converter o número de minutos para o formato hh:mm em TSQL?


Você pode converter a duração em uma data e formatá-la:
DECLARE
    @FirstDate datetime,
    @LastDate datetime

SELECT
    @FirstDate = '2000-01-01 09:00:00',
    @LastDate = '2000-01-01 11:30:00'

SELECT CONVERT(varchar(12), 
       DATEADD(minute, DATEDIFF(minute, @FirstDate, @LastDate), 0), 114) 

/* Results: 02:30:00:000 */

Para menos precisão, modifique o tamanho do varchar:
SELECT CONVERT(varchar(5), 
       DATEADD(minute, DATEDIFF(minute, @FirstDate, @LastDate), 0), 114) 

/* Results: 02:30 */