Хотите подсчитать сумму отсчёта по группам по опциям - PullRequest
1 голос
/ 07 апреля 2010

У меня есть таблица с такими столбцами, как id, tid, companyid, ttype и т. Д.

идентификатор может быть одинаковым для многих компаний, но уникальным в пределах компании и Тид всегда уникален и

я хочу рассчитать общее количество транзакций, введенных в таблицу,

одна транзакция может быть вставлена ​​в более чем одну строку,

например,

id tid companyid ttype 
1  1   1         xxx
1  2   1         may be null
2  3   1         yyy
2  4   1         may be null
2  5   1         may be null

вышеуказанные записи должны учитываться как только 2 транзакции.

это может быть повторено для многих компаний.

как рассчитать общее количество транзакций, введенных в таблицу

я пытался

select sum(count(*)) from transaction group by id,companyId; 

но не работает

select count(*) from transaction group by id; 

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

Ответы [ 2 ]

2 голосов
/ 07 апреля 2010

Попробуйте это

SELECT SUM(s.counts) transactions FROM (SELECT COUNT(*) counts FROM transaction GROUP BY id,companyId) s; 
0 голосов
/ 07 апреля 2010

Возможно, вам придется перефразировать ваше требование.Но, насколько я понимаю, может работать следующее:


select count( distinct id, companyid ) from transaction ;

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