sql >> Database teknologi >  >> RDS >> Sqlserver

Beregning af samlet tid på et sted med SQL Server datetime

Det du skal gøre er at beregne datoforskellen mellem de steder, hvor enheden havde brugt tid, som nedenfor

SELECT
*
FROM MyTable

Resultatværdier

Starttime               Endtime                 LocationID  EntityID
2014-09-23 14:07:43     2014-09-23 16:07:43     2           2
2014-09-23 14:09:03     2014-09-23 20:09:03     3           2
2014-09-23 14:09:51     2014-09-23 21:09:51     8           2
2014-09-23 14:15:10     2014-09-23 21:15:10     8           3
2014-09-23 14:15:16     2014-09-23 17:15:16     8           3
2014-09-23 14:15:23     2014-09-23 22:15:23     4           3
2014-09-23 14:15:32     2014-09-23 15:15:32     5           3
2014-09-23 14:06:26     2014-09-23 14:06:26     1           2

Brug nedenstående forespørgsel for at få det ønskede resultat

SELECT
    DATEDIFF(MINUTE, MIN(Starttime), MAX(Endtime)) TotalTimeSpentInMinutes,
    LocationID
FROM MyTable
WHERE EntityID = 2
GROUP BY LocationID

Resultatværdier ville være

TotalTimeSpentInMinutes LocationID
0                       1
120                     2
360                     3
420                     8


  1. Hvorfor virker mit database backup-script ikke i php?

  2. Sammenligning med dato i Oracle sql

  3. At have boolesk type i Postgres til PHP

  4. Hvordan opretter man en nedtællingstimer og kører en sql-forespørgsel med PHP, når den er færdig?