嗨,我有一张表,上面有每个产品的数量和评级,由于某些原因,我对每个产品有不同的行以及每个评级人的评级,如下所示:
p1 2
p2 4
p3 4
p1 4
p1 5
p1 3
p2 7
我正在使用以下查询,但它显示了所有产品的平均速率,但我希望它分别显示每个产品的平均速率。
Select ProductName, AVG(Rate) FROM Products
最佳答案
只是:
Select ProductName, AVG(Rate) AS 'Average Rate'
FROM Products
GROUP BY productName
编辑:显示速率最高的:
SELECT ProductName, Rate
FROM Products
ORDER BY rate DESC
LIMIT 1
编辑2:要获取平均速率最高的产品名称:
SELECT productname, AVG(rate) Avgrate
FROM Products
GROUP BY productname
HAVING AVG(rate) =
(
SELECT AVG(rate)
FROM Products
GROUP BY productname
ORDER BY AVG(rate) DESC
LIMIT 1
)
关于mysql - 不确定如何编写简单的查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12551380/