Доступ: GROUP BY с условием IIf () - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь запустить следующий код в Access:

SELECT T_SAP_IST.month, SUM(T_SAP_IST.value), IIf([description]="hours","hours","nonhours") AS descr
FROM T_SAP_IST
GROUP BY month, descr

Моя цель - получить сумму всех значений за каждый месяц, разделенную на "часы" и "не часы". Однако я получаю сообщение об ошибке, в котором говорится, что «'IIf ([description] =" hours "," hours "," nonhours ")" не является частью агрегатной функции "

Как это исправить? Спасибо за вашу помощь!

1 Ответ

1 голос
/ 29 апреля 2020

В MS Access вам нужно повторить выражение:

SELECT T_SAP_IST.month, SUM(T_SAP_IST.value), 
       IIf([description]="hours","hours","nonhours") AS descr
FROM T_SAP_IST
GROUP BY month, IIf([description] = "hours", "hours", "nonhours");

Вы также можете использовать подзапрос, поэтому вам не нужно повторять выражение. MS Access не поддерживает псевдонимы столбцов в GROUP BY.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...