首页 文章

按平均值筛选SQL

提问于
浏览
0

我有两个表产品和评论
每个产品都有几个评论链接由评论表中的外键product_id链接
此外,每个评论都有一个名为rating的字段,带有十进制值
我希望获得平均评分高于特定阈值的所有产品的名称
在某些方面

SELECT p.name
FROM products p
INNER JOIN reviews r ON p.id = r.product_id
WHERE avg(r.rating) > 3

MySQL不允许我在where子句中使用avg函数 .
我该怎么办?

1 回答

  • 7

    用'有'

    SELECT p.name, avg(r.rating) as average
    FROM products p
    INNER JOIN reviews r ON p.id = r.product_id
    GROUP BY p.name
    HAVING avg(r.rating) > 3
    

相关问题