SQL Server SELECT语句 - 如何获取所需的信息

时间:2014-12-27 16:54:21

标签: sql-server database select server

根据每个客户的订单日期分别计算每月订单数

  1. custID,订单日期,订单数量
  2. custID,名称,订单日期,订单数量
  3. 所以,我确实知道每月计算它的工作原理,但我不知道如何每月为每位顾客获取它。有什么想法吗?

    我的尝试:

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

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

1 个答案:

答案 0 :(得分:3)

custID中添加Year(OrderDate)Groupby以获取每个客户每月下达的订单数量,并且您可能会错误地计算组中的year。< / p>

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