Прошу помочь с решением задачи. У меня имеются следующие таблицы:
Я использую JOIN, чтобы создать общую таблицу, где объединены данные по продажам и офисам. Ключом для объединения является менеджер. В результате я получаю некорректное распределение городов, т.к. данные объединяются только по менеджеру, без учёта дат.
В алгоритм необходимо добавить условие, при котором будет учитываться дата зачисления / перевода сотрудника в какой-то город. JOIN города в таблицу продаж должен учитывать даты.
Необходимый результат:
Прикладываю файл примера с подключением. Благодарю!
Так если нужно по дате и менеджеру связывать, почему связываете только по менеджеру? Вяжите по двум условиям. Или извлекайте только первую запись(а-ля ВПР в Excel):
Мне не нужна последняя запись. Мне нужны все записи, которые соответствуют диапазону дат. В примере, для простоты восприятия сделано меньше записей в таблице продаж. Но записей может быть много.
Цитата
написал: по дате и менеджеру связывать
Эта задача не решается при помощи суррогатного ключа.
написал: задача не решается при помощи суррогатного ключа
какого-какого ключа? А при чем здесь суррогат? Вы задали вопрос-то какой?
Цитата
написал: я получаю дублирование данных, его необходимо избежать
Вы спрашивали про избежание дублирования данных - Вам показали. Спросили бы - как найти соответствия по таким-то и таким-то критериям - и ответ получили бы другой. Вам на основании чего и по каким таким ключам надо найти данные? Когда поясните - тогда и решение можно будет найти. А сидеть и гадать почему именно так на трех строках данных желания нет совсем.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...