升级下,4个表联合查询,该怎么解决

升级下,4个表联合查询

现有2个表:

A表:

id c_name

1 a客户

2 b客户

3 c客户

====================

B表(customer_id就是a表的id):

id customer_id project_type

1 1 JH

2 1 HT

3 1 FW

4 1 HT

5 2 JH

……

====================================

C表(customer_id就是a表的id)

id customer_id other

1 1 xxxx

2 1 yyy

3 2 zzzzzz

=================================

D表(customer_id就是a表的id)

id customer_id other

1 1 xxxx

2 1 yyy

3 2 zzzzzz

4 2 wwww

=================================

现需要做联合查询,得出类似与下面的数据列

客户名称 JH HT FW C表统计数 D表统计数

a客户 1个 2个 1个 2个 2个

b客户 1个 0个 0个 1个 2个

=======================================

也就是说不单单是要统计客户的 project_type 数量,而且还要得出每个类型(已固定只有三种类型)的具体数量 ,以及C表和D表中的统计数,这个sql应该怎么写??请大大门赐教啊~~~~~~~~~~~~~~~~~~~~~~~~



select a.c_name,

sum(if(project_type=’JH’,1,0)) AS JH,

sum(if(project_type=’HT’,1,0)) AS HT,

sum(if(project_type=’FW’,1,0)) AS FW,

COUNT(*) AS 合计,

(SELECT COUNT(*) FROM C WHERE a.id=customeR_ID) AS C表统计数,

(SELECT COUNT(*) FROM D WHERE a.id=customeR_ID) AS D表统计数

from a inner join b on a.id=b.customer_id

group by a.c_name

升级下,4个表联合查询,该怎么解决

相关文章:

你感兴趣的文章:

标签云: