Ce que vous devez faire est de calculer la différence de date entre les lieux où l'entité a passé du temps, comme ci-dessous
SELECT
*
FROM MyTable
Valeurs de résultat
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
Utilisez la requête ci-dessous pour obtenir le résultat souhaité
SELECT
DATEDIFF(MINUTE, MIN(Starttime), MAX(Endtime)) TotalTimeSpentInMinutes,
LocationID
FROM MyTable
WHERE EntityID = 2
GROUP BY LocationID
Les valeurs de résultat seraient
TotalTimeSpentInMinutes LocationID
0 1
120 2
360 3
420 8