Ваш запрос не содержит указанное выражение, как часть агрегатной функции
Не получается рассчитать стоимость с учетом скидки
SELECT зТоварный_чек.[Номер товарного чека],
зТоварный_чек.[Дата продажи], Sum(зТоварный_чек.Сумма) AS Стоимость,
IIf(Sum([Сумма])>2000,Sum([Сумма])*0.05,0) AS [Сумма скидки],
[Сумма]-(IIf(Sum([Сумма])>2000,Sum([Сумма])*0.05,0)) AS [Стоимость с учетом скидки]
FROM зТоварный_чек
GROUP BY зТоварный_чек.[Номер товарного чека], зТоварный_чек.[Дата продажи];
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
[Сумма]-(IIf(Sum([Сумма])>2000,Sum([Сумма])*0.05,0)) AS [Стоимость с учетом скидки]
^^^^^^^ этого поля нет в group by и оно не аггрегировано
[Сумма] отсутствует в group by, вы не можете её использовать в выборке. Вот Sum([Сумма] - можете, потому что это аггрегирование по всей группе.
Если вы хотите получить стоимость с учётом скидки именно по всему чеку, то просто поставьте Sum там где вы её пропустили, и всё:
Sum([Сумма])-(IIf(Sum([Сумма])>2000,Sum([Сумма])*0.05,0)) AS [Стоимость с учетом скидки]
^^^ - вот тут пропущено было Sum