我试图让每个销售人员的总数和总金额,但它不是我的工作与查询如何使用sum和count函数
目前我有:
WITH CALC1 AS (
SELECT B.OTSMAN AS SALESMAN, COUNT(B.ONINUM) AS COUNT, SUM(B.OVSVAL) AS SVAL
FROM @[email protected] AS B
WHERE B.OCSGRP <> 'INT' AND
B.OCSGRP <> 'INX' AND
B.OCPSBR IN (@[email protected]) AND
B.ICMATX <> '705' AND
B.OCSGRP NOT LIKE 'S/%'
GROUP BY B.OTSMAN, B.ONINUM ORDER BY B.OTSMAN ASC
)
SELECT SALESMAN, COUNT, SVAL FROM CALC1 ORDER BY SALESMAN
结果是:
AM 1 79.03
AM 40 1337.70
AM 48 4627.15
AM 42 2727.40
AM 1 111.79
AM 1 1110.00
AM 52 3018.77
我该如何更改我的查询,以便每个销售人员只能获得一个记录总数和价值?
AM 1 13,011.84
我不相信您的查询有效。你把“ORDER BY B.OTSMAN ASC”放在cte中,我猜sql server会抛出一个错误。 – zsong 2010-04-23 03:14:16