Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak uzyskać całkowitą liczbę godzin między dwiema datami na serwerze sql?

@codeka odpowiedział częścią z godzinami (z twojego tytułu), ale w treści pytania, które zadałeś godzinami i minutami, oto jeden sposób

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

To, co robi to w pierwszej części, pokazało @codeka. Daje różnicę między dwiema datami w rzeczywistych pełnych godzinach. Drugi termin w sql podaje datediff w minutach między (pierwsza data + godziny, które upłynęły) a drugą datą. Musisz wyeliminować godziny z równania w części minutowej lub otrzymasz rzeczywiste minuty między datami. Datediff i dozwolone identyfikatory Datepart można znaleźć tutaj:
http://msdn.microsoft.com/en-us/library/ms189794.aspx



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Widok, aby zidentyfikować zgrupowane wartości lub obiekt

  2. Ponownie włącz dodatek SSMS

  3. sterowanie ArithAbort w EF4

  4. Liczenie nowych Klientów miesięcznie

  5. SQL Server 2016:Projektant zapytań