日期:2014-05-16  浏览次数:20782 次

超高难度sql查询语句,挑战你,Mysql+Jsp 请帮忙解决这个查询语句问题啊!
我要做一个员工工作日志查询,需要用到两个表,为了大家容易理解,表的字段我都用中文来代替了。谢谢:

客户信息表:
客户ID,   客户状态,员工ID,部门ID,见客户日期   .....

日志表:
日志ID,员工ID,部门ID,   日志日期,打电话数量.....

我要已“客户信息表”中的员工ID,见客户日期索引查询,日志表中该部门所有员工的工作日志,其中包括求:“打电话数量”之和,   还要求:见客户的状况(在“客户信息表”中:“客户状态”字段是个int型,0代表:意向客户;1代表重要客户;2代表:签单客户),我要求:该部门总共有多少“意向客户数量”、“重要客户数量”、“签单客户数量”;
----------
查询在页面的显示结果如下:

部门:       见客户数量:       意向客户数量:       重要客户数量:   ....
------------------------
一部           10                           5                                 2    
二部           15                           6                                 1

---------------
难死我了,谢谢赐教!


------解决方案--------------------
select a.部门id ,a.见客户数,b.意向客户数,c.重要客户数
from
(select 部门id,count(*) 见客户数 from 客户信息表 group by 部门id) a left join
(select 部门id,count(*) 意向客户数 from 客户信息表 where 客户状态=0 group by 部门id) b
on a.部门id=b.部门id left join
(select 部门id,count(*) 重要客户数 from 客户信息表 where 客户状态=1 group by 部门id) c
on a.部门id=c.部门id


试一下