接受这个查询:
SELECT c.CustomerID, c.AccountNumber, COUNT(*) AS CountOfOrders,
SUM(s.TotalDue) AS SumOfTotalDue
FROM Sales.Customer AS c
INNER JOIN Sales.SalesOrderheader AS s ON c.CustomerID = s.CustomerID
GROUP BY c.CustomerID, c.AccountNumber
ORDER BY c.CustomerID;
我希望 COUNT(*) 计算 Sales.Customer 中的行数,但令我惊讶的是,它计算了连接表中的行数。
知道这是为什么吗?另外,有没有办法明确指定应该对哪个表 COUNT() 进行操作?