Последний статус оператора

Материал из Oktell
Перейти к: навигация, поиск

Наверх

Запрос возвращает текущие статусы операторов и время, когда этот статус был назначен. В запросе имеется закомментированная строка для фильтрации данных по конкретной задаче.

SELECT u.id ,u.NAME ,h.state ,h.TimeChange
 FROM A_Users u
 LEFT JOIN (SELECT h.*
    FROM 
      (
  SELECT UserId, max(TimeChange) TimeChange
  FROM A_UserStateHistory 
        GROUP BY UserId
  ) t
     JOIN A_UserStateHistory h ON t.UserId = h.UserId AND h.TimeChange = t.TimeChange
     ) h ON h.UserId = u.Id
WHERE u.id IN (
  SELECT OperatorId
  FROM [oktell_settings].[dbo].[A_TaskManager_Operators]
   -- where TaskId='25130D79-8766-4EAD-9C22-596CF2B465F9' 
  )