3
select PO_Order_Qty, Avg([PO_Order_Qty])as totalAverage 
FROM [FirstStrike_Retail].[custom].[Whse_Pricing_QR]    
where item_code ='111' and PO_order_qty <(Avg([PO_Order_Qty])*2)
group by PO_Order_Qty

我在 MS Sql 中使用上述 sql 来获取特定项目代码订单数量的平均值。我只期望一个返回值。

如果任何数量超过平均值的两倍,我需要消除。

谢谢 Xplr

4

1 回答 1

4

检查聚合函数(MAX、MIN、SUM、AVG 等)时,您应该使用 HAVING 子句。我不想只给你答案,而是尝试这样的事情。

select PO_Order_Qty, Avg([PO_Order_Qty])as totalAverage 
FROM [FirstStrike_Retail].[custom].[Whse_Pricing_QR]    
where item_code ='111' 
group by PO_Order_Qty
HAVING PO_order_qty <(Avg([PO_Order_Qty])*2)

编辑:根据您的评论尝试这个......像这样

    select * 
    FROM [FirstStrike_Retail].[custom].[Whse_Pricing_QR]    
    where item_code ='111' 
      and PO_Order_Qty < 
          (select Avg([PO_Order_Qty])as totalAverage 
          FROM [FirstStrike_Retail].[custom].[Whse_Pricing_QR]) * 2
于 2013-08-21T16:35:09.503 回答