Повторное использование TOP в запросе - PullRequest
0 голосов
/ 06 января 2019

Поиск ТОП предметов в запросе

У меня есть запрос Access с полями (в упрощенном виде) имя, тип, значение. Мне нужно извлечь верхние записи х (в соответствии со значением) ДЛЯ КАЖДОЙ ПАРЫ (имя, тип) с х в зависимости от пары. В запросе уже есть столбец «значение», отсортированный для каждой пары.

Решение 1. Сделайте отдельные запросы для каждой пары, возьмите верхний x в каждом и создайте объединение запросов. Неправильно! количество пар велико, Access не может обработать полученный запрос.

Решение 2. Добавьте дополнительный запрос в запрос, назовите его «Действительный» и установите для него значение «Истина» во всех записях. Затем используйте VBA для обхода элементов набора записей запроса один за другим и установите для параметра Valid значение False для не верхних элементов. Затем выполните дополнительный запрос, отбрасывая ложные записи. Опять же, неправильно, набор записей не редактируется в VBA (хотя «Действительный» не имеет никакого отношения к таблицам, используемым в запросе). Да, я открыл набор записей в VBA с помощью dbOpenDynaset - без кубиков.

Есть идеи? Спасибо

...