0

编写一个查询,返回从 ATunes 购买最多歌曲的前五名客户的姓名,按购买次数排序(降序)。如前所述,我还必须将结果限制在前 5 名。

SELECT P.CustomerID, A.FirstName, A.LastName, P.DateOfPurchase, COUNT(DateOfPurchase) as NumberOfPurchases
ORDER BY NumberOfPurchases DESC, LIMIT 0,5
FROM Purchases as P
JOIN ATunesCostumers as A on (A.CustomerID = P.CustomerID)
GROUP BY CustomerID;

这就是我正在尝试的,我得到一个语法错误。当我摆脱 ORDER BY 和 LIMIT 语句时,我得到了我需要的一切,除了限制和正确的排序。我很茫然,有谁知道我做错了什么?

4

1 回答 1

0

尝试这个:

SELECT P.CustomerID, A.FirstName, A.LastName, P.DateOfPurchase, COUNT(DateOfPurchase) as NumberOfPurchases
FROM Purchases as P
JOIN ATunesCostumers as A on P.CustomerID = A.CustomerID
GROUP BY CustomerID
ORDER BY NumberOfPurchases DESC LIMIT 0,5;
于 2012-12-19T07:06:35.707 回答