SQL Server选择ID,其中行数超过指定的数量

时间:2012-02-20 12:43:38

标签: sql-server

我对SQL Server不是很熟悉,但我知道基础知识。我想做类似下面的事情,但这不起作用。

SELECT COUNT(*) AS Expr2, shopid AS Expr1
FROM Orders
WHERE (Expr2 > '5000')

我基本上需要提取shopIds,他们有超过5000个订单。

1 个答案:

答案 0 :(得分:2)

不幸的是,MSSQL不允许在WHERE或HAVING子句中使用别名,因此您需要重复聚合字段。如果您想计算每个商店的订单,您还需要按商店ID分组:

SELECT     COUNT(*) AS Expr2, 
shopid AS Expr1 
FROM         
Orders 
GROUP BY ShopId
HAVING (COUNT(*) > 5000)