Я пытаюсь выяснить, можно ли сделать это проще / короче. Это работает, но я думаю, что могу быть быстрее, эффективнее или чище.
SELECT Tbl_VSchedTime.*
FROM CalendarScheduled
INNER JOIN Tbl_VSchedTime ON CalendarScheduled.[EID] = Tbl_VSchedTime.[EID]
WHERE ([Tbl_VSchedTime].[SchdDate] Between (SELECT MIN(CalendarScheduled.[SchdDate]) FROM CalendarScheduled) And (SELECT MAX(CalendarScheduled.[SchdDate]) FROM CalendarScheduled));
Это мой тестовый выбор, который фактически изменится на Удалить. Короче говоря, я выбираю из Tbl_VShedTime все, что соответствует EID в INNER JOIN и между минимальной и максимальной датами в CalendarScheduled. Однако я вынужден использовать SELECT под каждой из дат для его работы. Это не будет просто работать с использованием MIN и MAX, когда я уже «заклинаю» таблицу в операторе FROM.
Это то, как я должен использовать его в доступе, или я что-то пропустил? Спасибо.
Редактировать: Вопрос в том, почему я не могу просто написать:
WHERE ([Tbl_VSchedTime].[SchdDate] Between MIN(CalendarScheduled.[SchdDate]) And MAX(CalendarScheduled.[SchdDate]))