Все равно мне непонятно. Твой запрос конечно понятен и работает, но мне нужна немного другая задача, а следовательно более сложный запрос. Попробую поставить задачу следующим образом:
Всего в пробной базе данных 5 таблиц:
1. Контингент, содержит столбцы:
Код:

idКонтингента Контингент
1 Интерн
2 Слушатель
3 Переподготовщик
2. КонтингентОбучающихся, содержит столбцы:
Код:

idКонтингОбуч ФИО Контингент (Контингент является столбцом подстановки из таблицы Контингент)
1 Иванов Иван Иванович Интерн
2 Петров Петр Петрович Слушатель
3. Специальности, содержит столбцы:
Код:

idСпециальности Специальность
1 УЭФ
2 ФХ
3 ФТ и ФГН
4 Фармация
5 КЛД
6 ФАПы
7 Наркотика
8 ДЛО
4. Соответствия, содержит столбцы:
Код:

КонтингентID СпециальностьID (для попытки вывода в запросе не числовых значений а текста столбец СпециальностьID является столбцом подстановки из таблицы Специальности)
1 УЭФ
1 ФТ
1 ФХ и ФГН
2 УЭФ
2 ФТ
2 ФТ и ФГН
2 Фармация
2 КЛД
2 ФАПы
2 Наркотика
2 ДЛО
3 УЭФ
3 ФТ
3 ФТ и ФГН
3 Фармация
5. УчебныйПроцесс, содержит столбцы:
Код:

idУчПр ФИО (является столбцом подстановки из таблицы КонтингентОбучающихся) Специальность (здесь и предполагается создать поле подстановки для выбора значений, то есть запрос)
1 Иванов Иван Иванович
2 Петров Петр Петрович
Задачи стоят такие:
1. Выбирать значения в запросе не из таблицы Контингент, а из таблицы КонтингентОбучающихся из столбца Контингент;
2. Обеспечить привязку записей из таблицы КонтингентОбучающихся строго к записям таблицы УчебныйПроцесс, т.е. к полю ФИО, являющемуся столбцом подстановки из таблицы КонтингентОбучающихся для того, чтобы избежать ошибочного выполнения запроса когда поле ФИО таблицы УчебныйПроцесс ничего не содержит (или сделать поле Специальность неактивным пока не введены данные в поле ФИО);
3. Выбирать значения не фиксированные, как в твоем запросе, а только те, которые соответствуют выбранному в поле таблицы КонтингентОбучающихся столбца Контингент.
И прикреплю к этому сообщению с базой данных, содержащие жалкие попытки претворить в жизнь вышесказанное.