Mysql 要计算由group by选项呈现的计数总和吗
我有一个包含id、tid、companyid、ttype等列的表 对于许多companyid,id可能相同,但在companyid和 tid总是独一无二的 我想计算表中输入的交易总数 单个事务可以插入多行 比如说,Mysql 要计算由group by选项呈现的计数总和吗,mysql,group-by,Mysql,Group By,我有一个包含id、tid、companyid、ttype等列的表 对于许多companyid,id可能相同,但在companyid和 tid总是独一无二的 我想计算表中输入的交易总数 单个事务可以插入多行 比如说, 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 m
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;
无法工作,因为id可能会针对不同的公司重复。您可能需要重新表述您的要求。但根据我的理解,以下方法可能有效:
select count( distinct id, companyid ) from transaction ;
试试这个
SELECT SUM(s.counts) transactions FROM (SELECT COUNT(*) counts FROM transaction GROUP BY id,companyId) s;
上面的查询返回7932,因此我认为上面的值是合适的。我会用一组小唱片试试