我的查询从表gig
中获取结果,并为该特定演出分配了平均客户星级。我想取大于3的恒星平均值。
但是,平均值类似于4.00000
,3.90000
,2.8000000
。可以,但是我只想获取平均值大于3.0
的结果。
但是查询以错误结束。
这是我的查询:
SELECT
gig.* ,
(SELECT AVG(order_customer_stars)
FROM orders
WHERE orders.gig_id = gig.gig_id) AS star_average
FROM gig
WHERE star_average > 3
请帮助。谢谢
答案 0 :(得分:0)
MySQL扩展了hading子句以执行您想要的事情:
SELECT gig.* ,
(SELECT AVG(order_customer_stars)
FROM orders
WHERE orders.gig_id = gig.gig_id
) AS star_average
FROM gig
HAVING star_average > 3;
在其他数据库中,您将使用CTE,子查询或横向联接。