Два стола AVAIL_SCHEDULE
и EMPLOYEE_SCHEDULE
. Менеджеры вставляют часы на работу в таблицу AVAIL_SCHEDULE
. Сотрудники смотрят на доступные часы и выбирают время, которое они хотели бы работать (col Schedule_action: PICK).
Менеджер также может УДАЛИТЬ все расписание.
Что я хочу сделать, так это найти соответствующие часы в расписании сотрудников PICK, на которые повлиял DELETE.
Например:
Таблица: AVAIL_SCHEDULE
Сотрудник поднял 30-минутную смену с 7: 00-7:30 30.01.2020. Затем, позже, менеджер удалил смену. Таким образом, эта 30-минутная смена 5/1 уходит на ВСЕХ сотрудников, которые зарегистрировались. Как я могу запросить все записи PICK, у которых есть DELETE schedule_slot? (Действие DELETE будет 1 ко многим)
Я пытаюсь обновить таблицу employee_schedule, чтобы показать их измененное расписание. Кол. schedule_ID - это внешний ключ в таблице employee_schedule. Это возможно? Столбцы PROGR, DATE_INT, DATE_KEY и SCHEDULE_SLOT одинаковы для действий DELETE и PICK. Любая помощь с благодарностью.
Добавление данных:
CREATE TABLE AVAIL_SCHEDULE
(
[SCHEDULE_ID] [bigint] NULL,
[PROGRAM_NUMBER] [int] NOT NULL,
[DATE_INTERVAL] [datetime2](7) NULL,
[DATETIME_KEY] [int] NULL,
[ACTIVITY] [varchar](50) NOT NULL,
[COSMOS_SLOT_ID] [varchar](100) NULL
)
INSERT INTO AVAIL_SCHEDULE (SCHEDULE_ID, PROGRAM_NUMBER, DATE_INTERVAL, DATETIME_KEY, ACTIVITY, COSMOS_SLOT_ID)
VALUES (174379, 3254, '2020-05-01 07:15:00', 502494, 'PICK', '2020-05-01_3254_0715_4'),
(174381, 3254, '2020-05-01 07:00:00', 502493, 'PICK', '2020-05-01_3254_0700_4'),
(175679, 3254, '2020-05-01 07:15:00', 502494, 'DELETE', '2020-05-01_3254_0715_4'),
(175690, 3254, '2020-05-01 07:00:00', 502493, 'DELETE', '2020-05-01_3254_0700_4');