Добрый день!
Решаю следующую задачу:
1) Есть исходная таблица с данными в которой среди прочего есть столбцы ИСПОЛНИТЕЛЬ и ДАТА (в реальности она формируется отдельным запросом, но в примере дана сразу).
2) Есть вторая таблица в которой для каждого исполнителя в разный период проставляется свой коэффициент K (таблица постоянно дополняется и периодов может быть сколь угодно много).
3) Через запрос необходимо к исходной таблице добавить столбец K и каждому исполнителю проставить его коэффициент.
Процесс выбора коэффициента следующий:
- каждая строка исходной таблицы имеет запись ИСПОЛНИТЕЛЬ и ДАТА
- в таблице коэффициентов ищется строка совпадающая с исполнителем (она только одна)
- затем дата в исходной таблице сравнивается с датами в таблице коэффициентов и первая для которой выполняется условие ДАТА_ИСХОДНАЯ <= ДАТА КОЭФФ. и дает нужный K
- для всех случаев, когда искомого пользователя в таблице К не находится либо его дата больше дат в таблице коэффициентов, то в исходную таблицу проставляется К=1000
Вот с формированием такого запроса и возникла трудность. Буду рад помощи в решении задачи.
Решаю следующую задачу:
1) Есть исходная таблица с данными в которой среди прочего есть столбцы ИСПОЛНИТЕЛЬ и ДАТА (в реальности она формируется отдельным запросом, но в примере дана сразу).
2) Есть вторая таблица в которой для каждого исполнителя в разный период проставляется свой коэффициент K (таблица постоянно дополняется и периодов может быть сколь угодно много).
3) Через запрос необходимо к исходной таблице добавить столбец K и каждому исполнителю проставить его коэффициент.
Процесс выбора коэффициента следующий:
- каждая строка исходной таблицы имеет запись ИСПОЛНИТЕЛЬ и ДАТА
- в таблице коэффициентов ищется строка совпадающая с исполнителем (она только одна)
- затем дата в исходной таблице сравнивается с датами в таблице коэффициентов и первая для которой выполняется условие ДАТА_ИСХОДНАЯ <= ДАТА КОЭФФ. и дает нужный K
- для всех случаев, когда искомого пользователя в таблице К не находится либо его дата больше дат в таблице коэффициентов, то в исходную таблицу проставляется К=1000
Вот с формированием такого запроса и возникла трудность. Буду рад помощи в решении задачи.