select avg(id) from
(
SELECT n1.id,(sum(n2.frequency)-n2.frequency) as left,sum(n2.frequency) as right FROM [number] n1, number n2
where n2.id <= n1.id
group by n1.id
) a,
(select sum(frequency) sum from number) s
where
(sum%2=0 and ((sum/2>=left and sum/2<=right) or ((sum/2)+1 >=left and (sum/2)+1<=right)))
or
(sum%2<>0 and (sum/2)+1>=left and (sum/2)+1<=right);