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:
CONVERT(nvarchar(64), EindDatum-StartDatum, 108) AS DurationHoe ziet dat er dan uit in SQL Server?
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
http://codesimplified.com/2013/05/03/find-difference-between-2-dates-in-year-month-day-hour-minute-second-and-millisecond/
Gerelateerde blogs
After update trigger
Dichtstbijzijnde werkdag uitrekenen
Nederlandse feestdagen in SQL Server