Группировка и добавление значений сгруппированных данных.Проблема с написанием запроса - PullRequest
0 голосов
/ 23 сентября 2018

У меня есть CSV-файл, я сделал из него таблицу в Access:

pastebin.com / pSVXsg5r

в новой таблице я хотел бы создать четыре группы и присвоить им значения.

  • Группа 1 EXP
  • Группа 2 KOM
  • Группа 3 PCK
  • Группа 4 TRP (новое имя группы): HRL, L_F, LEA, PTP, SCH, TPE, UWA, VER.

enter image description here

Я хотел бы отобразить vdata1 vdata2 и HOURS для каждого пользователя, разделенного нагрупп.(сумма vdata1, сумма vdata2, сумма часов для каждой группы EXP, KOM, PCK, TRP)

enter image description here

Вот моя база данных в доступе, пожалуйста, подсказки или учебные материалы

http://www.mediafire.com/file/dcska071cg4p2wh/Table.rar/file

1 Ответ

0 голосов
/ 23 сентября 2018

Рассчитать идентификатор группы и группу для этого поля в агрегированном запросе.

SELECT USERID, IIf([GRUPA] Not In ("EXP","KOM","PCK"),"TRP",[GRUPA]) AS GrpID, Sum(VDAT1) AS SumVDAT1, Sum(VDAT2) AS SumVDAT2, Sum(HOURS) AS SumHOURS
FROM Table
GROUP BY USERID, IIf([GRUPA] Not In ("EXP","KOM","PCK"),"TRP",[GRUPA]);

Или добавить еще одну запись в группы:

TRP TRP

Затем объедините таблицы:

SELECT USERID, LGTYP, Sum(VDAT1) AS SumVDAT1, Sum(VDAT2) AS SumVDAT2, Sum(HOURS) AS SumHOURS
FROM Groups INNER JOIN Table ON Groups.GRUPA = Table.GRUPA
GROUP BY Table.USERID, Groups.LGTYP;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...