一个表里有两个字段,其中有一个字段的内容有重复的
比如:
客户1 职员1
客户2 职员1
客户3 职员2
客户1 职员2
客户2 职员1
现在我想输出这样的结果:
客户 职员1 职员2 合计
客户1 1 1 2
客户2 2 0 2
客户3 0 1 1
3个 3 2 5
最后一行第一列取客户总数,剩下三列取上面几行数的数字之和,该怎么写sql语句呢?
參考答案:你第一个表,两个字段不都重复了吗,
主键是什么
估计一下你的表:
pKey 客户 职员
1 .. ..
2 .. ..
3 .. ..
用 UNION 来做。
select A.客户, count(A.职员)as 职员1,count(B.职员)as 职员2,count(A.职员)+count(B.职员)as 合计
from 表名 A,表名(同一个表) B
where A.职员=职员1 and B.职员=职员2
group by 客户
UNION
select count(客户),sum(职员1),sum(职员2),sum(合计)
from 表名 group by 客户
UNION 作用是 把最后一行接表上。