select count(field_b) from tbl where field_a>0
union
select count(field_b) from tbl where field_a>0 and field_a<=100
union
select count(field_b) from tbl where field_a>100
union
select count(field_b) from tbl where field_a>0 and field_a<=100
union
select count(field_b) from tbl where field_a>100
count(decode(sign(field_a-100)),0,field_b,-1,field_b,0),
count(decode(sign(field_a-100)),1,field_b,0)
from tab1