Access. Исправить запрос

Условие:

Access. Исправить запрос

Условие: Access. Исправить запрос

Решение:

Предмет: Информационные технологии
Раздел: Базы данных (MS Access), создание перекрестных запросов


🔍 Проблема:

На изображении показано окно конструктора перекрестного запроса в Microsoft Access. Ошибка, которую выдает Access:

"Ваш запрос не содержит указанное выражение '[Стоимость_товара][Количество](1-[Скидка_за_просрочку])' как часть агрегатной функции."

Это означает, что в перекрестном запросе вы используете выражение вычисления суммы, но не указали агрегатную функцию (например, Sum, Avg, Count и т.д.), которая требуется при работе с перекрестными запросами.


🛠 Как исправить:

В перекрестных запросах все выражения в поле "Значение" должны быть обернуты в агрегатную функцию, например:

Sum([Стоимость_товара]*[Количество]*(1-[Скидка_за_просрочку]))


✅ Пошаговое исправление:

  1. В строке "Значение" (нижняя таблица конструктора запроса) найдите выражение:

    ([Стоимость_товара]*[Количество]*(1-[Скидка_за_просрочку]))
  2. Измените его на:

    Sum([Стоимость_товара]*[Количество]*(1-[Скидка_за_просрочку]))
  3. Убедитесь, что в столбце "Групповая операция" для этого поля выбрано значение "Выражение".


💡 Дополнительные советы:

  • Убедитесь, что все остальные поля, которые используются в строках и столбцах, имеют соответствующую группировку (Группировка, Заголовок строк, Заголовок столбцов).
  • В перекрестных запросах всегда должно быть:
    • Одно поле для Заголовков строк
    • Одно поле для Заголовков столбцов
    • Одно поле для Значений, обернутое в агрегатную функцию

📌 Пример исправленного выражения:

Поле "Сумма к оплате":

Sum([Стоимость_товара]*[Количество]*(1-[Скидка_за_просрочку]))


Если нужно — могу помочь составить SQL-код для этого запроса.

Не нашли нужного вам решения? Оставьте заявку и наши авторы быстро и качественно помогут вам с решением.
Оставить заявку
Работа вам нужна срочно. Не волнуйтесь, уложимся!
  • 22423 авторов готовы помочь тебе.
  • 2402 онлайн