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;