MS Access использовать iif оператор выбора запроса в качестве псевдонима

Я пытаюсь построить запрос, чтобы получить результаты учеников для конкретного экзамена в виде таблицы, которую можно объединить в текстовый документ. Следующее работает нормально, но кажется очень неэффективным, поскольку мне нужно дважды вызывать один и тот же запрос в одном и том же выражении iif.

 Test1: IIf(Round((SELECT tblMarks.Score  FROM tblMarks WHERE tblMarks.Test = 'Test1' AND [tblMarks].[ID] = [tblStudents].ID AND [tblMarks].[Rewrite] = false)*100,0)<70,70,Round((SELECT tblMarks.Score  FROM tblMarks WHERE tblMarks.Test = 'Test1' AND [tblMarks].[ID] = [tblStudents].ID AND [tblMarks].[Rewrite] = false)*100,0))

Чтобы избавиться от второго запроса, я попробовал следующее, но StudentScore не распознается ложным условием IIF.

Test1: IIf(Round((SELECT tblMarks.Score  AS StudentScore FROM tblMarks WHERE tblMarks.Test = 'Test1' AND [tblMarks].[ID] = [tblStudents].ID AND [tblMarks].[Rewrite] = false)*100,0)<70,70, StudentScore)

У меня есть много таких тестовых полей (test2, test3 и т. Д.), Поэтому даже простое удаление дополнительного запроса для каждого поля, вероятно, поможет немного ускорить процесс.

Кто-нибудь имеет какие-либо идеи, если то, что я пытаюсь сделать, даже возможно??? Любая помощь приветствуется.

Благодарю.

ОБНОВИТЬ:

Я пытаюсь создать таблицу / запрос для использования в документе MS Word с полями. Этот новый запрос объединяет множество таблиц в одну. Вот и пример структуры таблицы:

tblStudent: StudentID, Name и т. д. Много личной информации.
tblScore: StudentID, тест, оценка, переписать и т. д...

Новое поле запроса:

DISTINCT tblStudent.StudentID, tblStudent.Name, tblScore.Test (как показано выше) AS Test1, tblScore.Test(То же, что и выше, но с test2) AS Test2, ... Где CourseName.....

Надеюсь, что это поможет людям увидеть, что я пытаюсь сделать; которые работают нормально, я просто пытаюсь устранить второй запрос в операторе if. Извините, это лучшее, что я могу сделать прямо сейчас, так как сейчас я не на работе, и именно здесь хранится весь этот материал.

0 ответов

Другие вопросы по тегам