SQL查询没有返回我的预期

时间:2014-08-06 22:12:46

标签: sql ms-access

首先,非常感谢您花时间查看我的SQL问题。我正在构建一个MS Access查询,而且我要拔掉头发,因为我无法弄清楚我的查询有什么问题!

SELECT First(StoreNum) AS FirstOfStoreNum, 
       NewItem, ItemNum, Wrin, TotalUnits, Avg(UnitAmt) AS AvgOfUnitAmt 
FROM qryPhyInvGTZeroWithUnitPrice 
GROUP BY NewItem, ItemNum, Wrin, TotalUnits;

我想从这个愚蠢的查询中得到的是所有NewItems的平均单位数量。请大师!我需要你的帮助。我错过了什么?

这是我运行此查询时返回的内容的摘录。这个[NewItem]应该有20个商店,但只有19个商店被退回。

enter image description here

我希望这有助于更好地解释我的问题。

UPDATE !!! 我只需要远离它。我重新阅读答案,你们是对的(当然)。这是更新后的代码。

SELECT StoreNum, NewItem, ItemNum, Wrin, Avg(UnitAmt) AS AvgOfUnitAmt
FROM qryPhyInvGTZeroWithUnitPrice
GROUP BY StoreNum, NewItem, ItemNum, Wrin;

我也摆脱了总单位,因为它对这个项目没有好处。在实施提示后,查询的工作方式应该如此!再次感谢!

2 个答案:

答案 0 :(得分:2)

我认为您需要添加的内容是qryPhyInvGTZeroWithUnitPrice.StoreNum Group By,它应该有效。使用其他聚合函数或group by调用聚合函数(如AVG)将导致查询失败。

修改 您获得的数据似乎是项目的数据,而不是StoreNum。我会说你在一个NewItem, ItemNum, Wrin, TotalUnits中有StoreNum的19种不同组合。

答案 1 :(得分:1)

试试这个:

SELECT First(StoreNum) AS FirstOfStoreNum, 
       NewItem, ItemNum, Wrin, TotalUnits, Avg(UnitAmt) AS AvgOfUnitAmt 
FROM qryPhyInvGTZeroWithUnitPrice 
GROUP BY StoreNum, NewItem, ItemNum, Wrin, TotalUnits;