Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment convertir le nombre de minutes au format hh:mm dans TSQL ?

Vous pouvez convertir la durée en date puis la formater :

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 */

Pour moins de précision, modifiez la taille du varchar :

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

/* Results: 02:30 */