2013-05-04 72 views
0
SELECT Customer.CID, Count(Order.OrderID) AS [# Orders] 
FROM Customer INNER JOIN [Order] ON Customer.CID = Order.CID 
Group By Customer.CID DESC; 

我试图按降序排列客户的订单总数。我在group by子句中出现语法错误。林不知道什么语法错误。SQL List总订单降序

+0

你得到了什么错误? – Sachin 2013-05-04 05:18:36

+0

“Group By子句中的语法错误” – user214577 2013-05-04 05:19:38

回答

3

您错过了ORDER BY子句。您的查询应该是这样的:

SELECT Customer.CID, Count(Order.OrderID) AS [# Orders] 
FROM Customer INNER JOIN [Order] ON Customer.CID = Order.CID 
GROUP BY Customer.CID 
ORDER BY Customer.CID DESC; 
+2

顺便说一句,查询起作用,但我喜欢避免使用保留字,如'Order'作为对象名称。 – 2013-05-04 05:26:11

+0

如果我想按订单数量订购,我该怎么做? – user214577 2013-05-04 05:38:35

+0

ORDER BY Order.OrderID DESC; – 2013-05-04 05:44:38

1

您应该使用order by,而不是group by
所以新的查询会,

SELECT Customer.CID, Count(Order.OrderID) AS [# Orders] 
FROM Customer INNER JOIN [Order] ON Customer.CID = Order.CID 
Order By Customer.CID DESC; 

我没有表。所以请提供您的评论。

+0

如果我想按订单数量来订购,我该怎么做? – user214577 2013-05-04 05:35:00

+1

您的查询对用户无效。您需要使用&by order by。看看我的回答澄清。 – 2013-05-04 05:36:39

+0

谢谢..我没有看到任何分组数据的要求.. – Ajay 2013-05-04 05:54:55