Klinkt makkelijk, toch? Ik wil het verschil in uren en minuten tussen twee datums berekenen. Een goed leesbare notatie voor mijn rapport. Ik wil een opmaak zoals deze:

00:36:53 OF 02:13:45

Dit kan makkelijk met een T-SQL-statement zoals dit:

SQL
CONVERT(nvarchar(64), EindDatum-StartDatum, 108) AS Duration

Hoe ziet dat er dan uit in SQL Server?

T-SQL: verschil in minuten tussen twee datums berekenen

Veelgestelde vragen

Hoe toon ik het verschil tussen twee datums als uren en minuten in SQL Server?

Trek de datums van elkaar af en zet het resultaat om met style 108. Bijvoorbeeld: CONVERT(nvarchar(64), EindDatum-StartDatum, 108). De uitkomst ziet eruit als 00:36:53 of 02:13:45.

Welke CONVERT-style geeft hh:mm:ss in T-SQL?

Style 108. Gebruik je die op het resultaat van EindDatum-StartDatum in een CONVERT naar nvarchar(64), dan krijg je een leesbare duur zoals 02:13:45.

Hoe ziet de duur eruit als ik CONVERT met style 108 gebruik?

Je ziet uren, minuten en seconden, gescheiden door dubbele punten, bijvoorbeeld 00:36:53. Dat is een leesbare notatie voor een rapport.

Hoe trek ik twee datetime-kolommen van elkaar af in T-SQL voor een duur?

Schrijf EindDatum-StartDatum, met de einddatum eerst. Zet dat in CONVERT(nvarchar(64), ..., 108), zodat het resultaat een tijd als tekst wordt die je in een rapport kunt zetten.

Welk datatype gebruik ik om een duur als tekst op te slaan in SQL Server?

Het voorbeeld gebruikt nvarchar(64) in de CONVERT. Het resultaat is een tekst zoals 00:36:53, die makkelijk te lezen is in een rapport.

1 reactie

Je e-mailadres wordt niet getoond. Een foto komt van Gravatar, als je die hebt.

  1. Viral Sarvaiya

    http://codesimplified.com/2013/05/03/find-difference-between-2-dates-in-year-month-day-hour-minute-second-and-millisecond/