Co musíte udělat, je vypočítat rozdíl v datech mezi místy, kde entita strávila čas, jak je uvedeno níže
SELECT
*
FROM MyTable
Hodnoty výsledků
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
Použijte níže uvedený dotaz k získání požadovaného výsledku
SELECT
DATEDIFF(MINUTE, MIN(Starttime), MAX(Endtime)) TotalTimeSpentInMinutes,
LocationID
FROM MyTable
WHERE EntityID = 2
GROUP BY LocationID
Výsledné hodnoty by byly
TotalTimeSpentInMinutes LocationID
0 1
120 2
360 3
420 8