Điều này có thể được thực hiện với điều khoản HAVING:
SELECT e.*, rt.review_id, (SUM(vt.percent) / COUNT(vt.percent)) AS rating
FROM catalog_product_entity AS e
INNER JOIN rating_option_vote AS vt ON e.review_id = vt.review_id
GROUP BY vt.review_id
HAVING (SUM(vt.percent) / COUNT(vt.percent)) >= 0
ORDER BY (SUM(vt.percent) / COUNT(vt.percent)) ASC
Lưu ý:Đã thêm nơi đặt ORDER BY
tuyên bố
Trình tối ưu hóa truy vấn cũng không nên tính Giá trị trung bình nhiều lần, vì vậy điều đó không phải là vấn đề đáng lo ngại ở đây.
Như đã được đề cập trong câu trả lời của @ jagra, bạn sẽ có thể sử dụng AVG()
thay vì SUM() / COUNT()