Самый примитивный вариант:
оконными функциями вычисляем дельту между соседними событиями (например в минутах или секундах)
потом это агрегируем по дням-сотрудникам, а дельты суммируем, указывая в качестве знака признак вход/выход
потом начинать лить кровавые слезы в ситуациях когда "два раза подкинули, один раз поймали" либо "выходил два раза, потом зашел", "зашел, но не выходил" и т.п.
сходный, но чуть более удобный в плане выявления вариант - pivot'ом раскладываем отметки времени на две колонки, а далее как в первом варианте - дельты (только уже имея возможность фильтровать вышел-зашел)
p.s. из практики - совершенно бесперспективный путь, если на входе не стоит шлюз-мельница под надзором двух суровых вохровцев.
Более перспективный вариант - можно предложить по более подробному описанию исходной задачи/проблемы