>select Account, sum(balance) as Total_Balance, sum(iif(MyCond,value,0)) as MyCond_Balance from ... group by 1 ; >having MyCond_Balance/EVL(ROUND(Total_Balance,6),.NULL.) > 0.1 > >OR >select Account, sum(balance) as Total_Balance, sum(iif(MyCond,value,0)) as MyCond_Balance from ... group by 1 ; >having ROUND(MyCond_Balance,6)> 0.1 * ROUND(Total_Balance,6) > >Thanks, Fabio. I haven't realised that a/b > 0.1 is the same as a > (b*0.1) The second part takes care of b=0 automatically.