Добавить итоговую строку в запрос MS Access - PullRequest
2 голосов
/ 03 декабря 2009

У меня есть запрос, хранящийся в MS Access, который выполняет стандартный выбор из таблицы Access. Я хотел бы добавить итоговую строку в конце, показывающую суммы для некоторых из данных выше.

Я посмотрел на DSum (), но он не подходит, поскольку мне пришлось бы включать промежуточные суммы в каждой строке, а не только в конце.

Также обратите внимание, что я не хочу суммировать данные в столбце a - я хотел бы получить пустое поле для сводки столбца a.

Пример:

a | b | c
-------------
0 | 1 | 2
1 | 1 | 9

  | 2 | 11 <-- Sums data above

Кто-нибудь знает, как решить эту проблему в Access? Альтернативой может быть определение второго запроса, который выполняет агрегацию, а затем объединение его с набором записей первого, но мне это не кажется особенно элегантным.

В SQL-сервере, по-видимому, возможно использовать «COMPUTE» или «ROLLUP», но они не поддерживаются в MS Access.

1 Ответ

5 голосов
/ 03 декабря 2009

Вы можете использовать объединенный запрос:

SELECT "" As Sort, a,b,c FROM Table
UNION ALL
SELECT "Total" As Sort, Sum(a) As A, Sum(b) As b, Sum(c) As C FROM Table
ORDER BY Sort

EDIT:

SELECT "" As Sort, a,b,c FROM Table
UNION ALL
SELECT "Total" As Sort, "" As A, Sum(b) As b, Sum(c) As C FROM Table
ORDER BY Sort
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...