根据每个客户的订单日期分别计算每月订单数量
客户ID、订单日期、订单数量
客户ID、名称、订单日期、订单数量
所以,我知道它是如何工作的,每月数它,但我不知道如何获得每个客户每月。有什么想法吗?
我的尝试:

SELECT
    Count(*) AS "number of orders"
FROM
    Sales.SalesOrderHeader
GROUP BY
    Month(OrderDate)

它使用表AdventureWorks中的Sales.SalesOrderHeader数据库,有足够的信息来计算它,但是我想不出一个语句。

最佳答案

custID中添加Year(OrderDate)Groupby以获取每个客户每月下的订单数,如果不在组中添加year则可能会得到错误的订单数。

SELECT custid,
       Month(OrderDate),
       Year(OrderDate),
       Count(*) [AS number of orders]
FROM   Sales.SalesOrderHeader
GROUP  BY custid,
          Month(OrderDate),
          Year(OrderDate)

09-04 06:21
查看更多