Można to osiągnąć za pomocą klauzuli 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
Uwaga:dodano miejsce, w którym należy umieścić ORDER BY
oświadczenie
Optymalizator zapytań nie powinien również wielokrotnie obliczać średniej, więc nie powinno to być tutaj problemem.
Jak wspomniano w odpowiedzi @jagry, powinieneś być w stanie użyć AVG()
zamiast SUM() / COUNT()