在select查询中分组会返回比实际选择表中更多的行吗?

时间:2015-03-27 05:55:16

标签: sql grouping

我需要从表中选择包含10条记录的几列,我需要按productId对这1条记录进行分组。
如果我将包含超过120条记录的产品表中的所有这些记录分组,则会获得超过1000条记录。

1 个答案:

答案 0 :(得分:0)

您很可能没有正确使用JOIN。您需要说明两个(或更多)表的值相等的位置。比如......

SELECT COUNT(a.AppleId) as AppleAmt, b.BasketLocation, c.ContainerColor
FROM Apples as a INNER JOIN
Baskets as b ON a.BasketId = b.BasketId INNER JOIN
Containers as c ON b.ContainerId = c.ContainerId
WHERE a.Rotten IS NULL and a.Eaten IS NULL and a.SoTasty IS NOT NULL
GROUP BY b.BasketLocation, c.ContainerColor
ORDER BY b.BasketLocation DESC