SQL ИТОГО И БОЛЬШОЙ ВСЕГО - PullRequest
       1

SQL ИТОГО И БОЛЬШОЙ ВСЕГО

1 голос
/ 15 октября 2010

ЭЙ ВСЕ

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

например, я ищу что-то вроде этого

Completed 100
Rejected 50
Declined 20
Total        170

в 3 разных рядах ..

Поля таблицы примерно такие.

transaction_id
status_id,
date
transaction_number

1 Ответ

3 голосов
/ 15 октября 2010

Предполагая, что текстовый статус, который вы упоминаете в желаемом выводе, соответствует столбцу status_id в вашей таблице, вы можете использовать что-то вроде:

SELECT status_id, count(*)
FROM dbo.YourTable
GROUP BY status_id WITH ROLLUP

Это работает для SQL Server 2000 и новее - не уверенесли другие СУБД имеют такой же синтаксис ... (к сожалению, вы не упомянули какую систему вы используете ...)

WITH ROLLUP вызовет дополнительную строкубыть добавленным к вашему результату с status_id из NULL - это сумма всех объединенных подсчетов.

Вы не упоминали, как "перевести" status_id в текстовое описание - это можетдобавить, если вы предоставите необходимую информацию ....

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