Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да конвертирам броя на минутите във формат hh:mm в TSQL?

Можете да конвертирате продължителността в дата и след това да я форматирате:

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

За по-малко прецизност променете размера на varchar:

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

/* Results: 02:30 */


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кои колони обикновено правят добри индекси?

  2. Избиране на данни от два различни сървъра в SQL Server

  3. Обхват на временните таблици в SQL Server

  4. Мисли за изданията на SQL Server 2019

  5. Какво представлява нулевият символен литерал в TSQL?