sql >> Database >  >> RDS >> Sqlserver

Hoe krijg ik het totale aantal uren tussen twee datums op de SQL-server?

@codeka antwoordde met het urengedeelte (uit je titel) maar in de hoofdtekst van je vraag stelde je uren en minuten, dus hier is een manier

 select DATEDIFF(hh, @date1, @date2) as Hours_Difference,   
    DATEDIFF(mi,DATEADD(hh,DATEDIFF(hh, @date1, @date2),@date1),@date2) as Minutes_Difference

Wat dit in het eerste deel doet, is wat @codeka liet zien. Het geeft u het datumverschil tussen de twee datums in werkelijke volledige uren. De tweede term in de sql geeft de datediff in minuten tussen de (eerste datum + de verstreken uren) en de tweede datum. U moet de uren uit de vergelijking in het minutengedeelte verwijderen, anders krijgt u de werkelijke minuten tussen de datums. Datediff en de toegestane Datepart-ID's kunnen hier worden onderzocht:
http://msdn.microsoft.com/en-us/library/ms189794.aspx



  1. Hoe krijg ik de automatisch gegenereerde id's van de rij die in de tabel is ingevoegd?

  2. Postgres-functie maakt aan, maar wordt niet uitgevoerd

  3. De resultaten van een query gebruiken als kolomnamen in een SELECT-instructie

  4. MySQL BESTELLEN OP IN()