Office中国论坛/Access中国论坛

标题: 求教一条SQL查询语句 [打印本页]

作者: simplelove727    时间: 2008-9-13 15:04
标题: 求教一条SQL查询语句
拜访表
业务员ID  客户ID  产品(ABC三种产品)
张三         111       A
李四         111       A
张三         222       B
张三         222       C
李四         111       B

要求统计出不同业务员各产品的拜访总数、全部产品拜访总数及拜访客户数

SELECT 拜访表.业务员ID, count(客户ID) AS 拜访客户数, Sum(IIf(拜访表.产品='A',1,0)) AS A总数, Sum(IIf(拜访表.产品='B',1,0)) AS B总数, Sum(IIf(拜访表.产品='C',1,0)) AS C总数, A总数+B总数+C总数 AS 产品总数
FROM 拜访表  GROUP BY 拜访表.业务员ID, 客户ID

这是ACCESS数据库,总是不能正确计算拜访客户数,谢谢高手指教一下

数据库中还有一个客户表
客户ID  客户名称
111       三千里
222       权金城

因为拜访表中有重复客户ID号,要计算不重复客户数也想过用嵌套查询
select count(*) from (select distinct 客户ID from 拜访卡) 但不知道怎么与上面语句结合!!
作者: tanhong    时间: 2008-9-13 15:33
1、就我分析你可能没有建立表的主索引所至.如果没有主索引做为客户唯一识别号,有出现重复的现象,而导致无法得出正确的客户统计结果.
2、还有一点你提到了两个客户表,为什么不用一个表.这也可能是导致不能得出正确的统计结果的原因

这只是根据你的表述得出的印象,最好是上传实例看一下。
作者: puter9    时间: 2008-9-14 22:53
我也想要这个答案。
作者: zyp    时间: 2008-9-17 14:04
对楼主的描述有些看不懂,请根据你的表格,写出你想要的查询结果。
作者: simplelove727    时间: 2008-9-19 17:57
标题: 查询结果
业务员 业务ID  客户总数 A产品数 B产品数 C产品数
张三   111        3                4               5              6
李四   222        4                5               6              7




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3