Sql server 2012 AdventureWorks2012:对于每个客户,确定2007年创建的订单数量,如果没有订单,则显示0
对于每个客户,确定2007年创建的订单数量。如果客户在2007年没有创建任何订单,则显示该客户的0 显示:2007年创建的订单的客户ID如果没有,则显示0 订购人:客户ID好-这是我第三次为您回答此类问题。在我看来,到现在为止,你真的应该能够接受我的一个答案并调整它,使之适应你的另一个问题——你不同意吗 所以这里有一个可以找到2007年每个客户的销售额的例子——对于那些没有任何销售额的客户显示为0Sql server 2012 AdventureWorks2012:对于每个客户,确定2007年创建的订单数量,如果没有订单,则显示0,sql-server-2012,Sql Server 2012,对于每个客户,确定2007年创建的订单数量。如果客户在2007年没有创建任何订单,则显示该客户的0 显示:2007年创建的订单的客户ID如果没有,则显示0 订购人:客户ID好-这是我第三次为您回答此类问题。在我看来,到现在为止,你真的应该能够接受我的一个答案并调整它,使之适应你的另一个问题——你不同意吗 所以这里有一个可以找到2007年每个客户的销售额的例子——对于那些没有任何销售额的客户显示为0 -- determine the number of all sales in 2007 for
-- determine the number of all sales in 2007 for each customer
;WITH SalesPerCustomer AS
(
SELECT
c.CustomerID,
NumberOfSales = ISNULL(COUNT(soh.SalesOrderID), 0)
FROM
Sales.Customer c
LEFT OUTER JOIN
Sales.SalesOrderHeader soh ON soh.CustomerID = c.CustomerID
AND soh.OrderDate >= '20070101'
AND soh.OrderDate < '20080101'
GROUP BY
c.CustomerID
)
SELECT
CustomerID ,
NumberOfSales
FROM
SalesPerCustomer
ORDER BY
NumberOfSales DESC
可能重复的