PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Agregados não permitidos na cláusula WHERE no erro postgreSQL


Você pode fazer isso com uma função de janela em uma subconsulta:
select name, add, mobile
from (select a.name, a.add, a.mobile, total,
             avg(ac.total) over (partition by a.name, a.add, a.mobile) as avgtotal, a.total
      from user a INNER JOIN
           user_info aac
           ON aac.userid= a.userid INNER JOIN
           info ac 
           ON aac.infoid= ac.infoid
     ) t
WHERE total < 8 * avgtotal
GROUP BY name, add, mobile;