我试图输出每个销售人员在过去六个月内销售的产品,但我使用的产品计算所有日期并输出它们。
SELECT SalespersonNo, COUNT (SalespersonNo) AS ['CarsSold']
FROM CarForSale
WHERE DateSold > '01/08/2018'
GROUP BY SalespersonNo;
正如我上面所说,它输出所有加起来的日期,而不是我想要的,这是为了它加起来过去 6 个月内售出的所有汽车
这些是我得到的结果:
SalespersonNo 'CarsSold'
100001 4
100002 1
100003 1
100004 4
100005 2
100010 1
100011 2
100012 2
100015 1
100017 2
100020 2
我的目标是得到这样的结果:
SalespersonNo 'CarsSold'
100001 3
100003 1
100004 3
100005 1
100011 2
100015 1
100017 2
100020 1
您可能想要使用条件聚合:
SELECT SalespersonNo,
COUNT(SalespersonNo) AS [CarsSoldTotal],
COUNT(CASE WHEN DateSold > DATEADD(mm, -6, GETDATE()) THEN 1 END) AS [CarsSold6Month]
FROM CarForSale
WHERE DateSold > '01/08/2018'
GROUP BY SalespersonNo;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句