SQL Сервер: выяснить, был ли пользователь включен в указанные c периоды времени - PullRequest
0 голосов
/ 23 января 2020

У меня есть две таблицы:

  1. Изменения пользователей Записи из системы
  2. Даты прекращения пользователей из отдела кадров (список, созданный вручную)

Изменения статуса пользователей заблокированы / разблокированы Период аудита: 01.01.2018-31.12.2018

Системные данные:

SystemUsername;StatusChangeDate;Status;IssueFlag;Comment
user1;01.02.2018;Locked;false;
user1;04.02.2018;Unlocked;true;User was unlocked after he left the company.
user1;06.02.2018;Locked;true;User was unlocked after he left the company.
user1;01.07.2018;Unlocked;false;
user2;01.03.2018;Locked;false;
user2;01.06.2018;Unlocked;false;
user2;01.09.2018;Locked;true;User was terminated one month too late.

Данные отдела кадров клиента:

ClientGivenUsername;ClientGivenTerminationDate;ClientGivenReentryDate;ClientGivenSecondTeminationDate;
user1;01.02.2018;01.07.2018;n/a;
user2;01.03.2018;01.06.2018;01.08.2018;

В В приведенных выше таблицах есть три строки, которые необходимо отметить как проблему, поскольку пользователь был разблокирован в то время, когда он не работал в компании, согласно списку из отдела кадров.

Можете ли вы помочь мне установить для IssueFlag значение «true» для пользователей, которые были разблокированы в период, когда они не работали в компании?

Заранее большое спасибо!

...