Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Elena911 Member Откуда: Сообщений: 1 |
Ребят, помогите с запросом. есть 2 таблицы. 1я таблица имеет дату начала dateStart и ID 2я ID и 4 поля дат. datePlanStart, dateFactStart, datePlanEnd, dateFactEnd Нужно сделать запрос, который будет выдавать id у которого dateStart не будет пересекаться с датами из второй таблицы (не входит в промежуток datePlanStart, dateFactStart, datePlanEnd, dateFactEnd). При чем dateFact (начало и конец) будет приоритетней, чем datePlan. Т.е. это дата по факту (что произошло), а не запланировано, но даты факта могут быть еще не заполненны. |
4 мар 19, 14:29 [21824416] Ответить | Цитировать Сообщить модератору |
Kopelly Member Откуда: Красноярск Сообщений: 289 |
Select * From Table1 a Where not exists ( select 1 From Table2 b Where a.ID = b.ID and a.dateStart between isnull(b.dateFactStart,b.datePlanStart) and isnull(b.dateFactEnd,b.datePlanEnd) ) |
4 мар 19, 18:37 [21824747] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |