我一直在尝试设置此查询。
SELECT P.ProductNo,P.Description, AVG(OrderLine.ActualPrice)
FROM Product P
INNER JOIN OrderLine
ON OrderLine.ProductNo = P.ProductNo
WHERE AVG(ActualPrice) >
(SELECT AVG(ActualPrice)
FROM OrderLine)
我的目标是将产品的平均实际价格与所有产品的平均价格进行比较。但我似乎没有让它发挥作用。我在哪里错了?
答案 0 :(得分:3)
GROUP BY
HAVING
代替WHERE
查询,
SELECT P.ProductNo, P.Description, AVG(OrderLine.ActualPrice)
FROM Product P
INNER JOIN OrderLine
ON OrderLine.ProductNo = P.ProductNo
GROUP BY P.ProductNo, P.Description
HAVING AVG(ActualPrice) > (SELECT AVG(ActualPrice) FROM OrderLine)