Mysql 汇总单个表中多列的计数
我想在单个显示器上显示两类数据的计数 我的桌子如下:Mysql 汇总单个表中多列的计数,mysql,aggregate-functions,Mysql,Aggregate Functions,我想在单个显示器上显示两类数据的计数 我的桌子如下: table : funding area client Donatur ----------------------------------------- A Ox Mr.X A Pr Mr.Y A Qs Mr.Z A Ts Mr.Z B Rt Mr.X C Ss Mr.
table : funding
area client Donatur
-----------------------------------------
A Ox Mr.X
A Pr Mr.Y
A Qs Mr.Z
A Ts Mr.Z
B Rt Mr.X
C Ss Mr.X
C Sa Mr.Z
我想显示数据,以面积为基础进行计数,并在表中显示donatur,如下图所示
Donatur Count of Area Count of Client
--------------------------------------------------------
Mr.X 3 3
Mr.Y 1 1
Mr.Z 2 3
我已尝试创建如下查询:
table : funding
area client Donatur
-----------------------------------------
A Ox Mr.X
A Pr Mr.Y
A Qs Mr.Z
A Ts Mr.Z
B Rt Mr.X
C Ss Mr.X
C Sa Mr.Z
按区域从资金组中选择计数(客户)、计数(区域)、捐赠
但我没有在一边得到任何正确的数字,结果如下,两者都一样。应该像上面那样
Donatur Count of Area Count of Client
--------------------------------------------------------
Mr.X 3 3
Mr.Y 1 1
Mr.Z 2 2
谢谢@Mahesh。你救了我的命。只需添加distinct,它就可以工作:)。
mysql> SELECT DONATUR,COUNT(DISTINCT AREA) AS AREA,COUNT(DISTINCT CLIENT) AS CLIENT FROM funding GROUP BY Donatur;
+---------+------+--------+
| DONATUR | AREA | CLIENT |
+---------+------+--------+
| Mr.X | 3 | 3 |
| Mr.Y | 1 | 1 |
| Mr.Z | 2 | 3 |
+---------+------+--------+
3 rows in set (0.00 sec)