抱歉我一开始的英语不好。
我正在 W3schools 的 SQL Tryit Editor 中学习 SQL。您可能会发现我操作的桌子相同。
如何计算相同产品的数量?
我试过这个:
SELECT Products.ProductName, OrderDetails.Quantity, Customers.Country
FROM Orders
JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID
JOIN Products ON OrderDetails.ProductID = Products.ProductID
JOIN Customers ON Orders.CustomerID = Customers.CustomerID WHERE Customers.Country = 'Germany';
这就是我的结果:
如您所见,例如有两行带有“波士顿蟹肉”,并且其数量没有相加。
解决方案:
SELECT Products.ProductName, SUM(OrderDetails.Quantity) AS Quantity, Customers.Country
FROM Orders
JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID
JOIN Products ON OrderDetails.ProductID = Products.ProductID
JOIN Customers ON Orders.CustomerID = Customers.CustomerID WHERE Customers.Country = 'Germany'
GROUP BY ProductName;