用循环表一,然后在表二里取出符合范围的count(*)就行了

解决方案 »

  1.   

    选出所用地区的记录不难
    select count(*) from tablename where 开始号码<字段<结束号码;不过这样每次检查一遍100万记录服务器负担很大
    所以我的想法是:
    你可以另外建立一张表
    当用户输入它的区号的时候判断一下,看它属于哪个地区,如果执行成功的话,对这个地区的统计数字加一,这样你如果想得到这样的数据,只需要操作这张表就可以了,很高效。---而且这个表可以变的广泛一些,比如处理相近的信息----性别,学历,年龄段等,这样,把表分的细一些,你就可以更快的得到你想要的信息浅妄薄见,望与斟酌
      

  2.   

    select count(a.编号) ,b.地区from table2 a,table1 b where a.号码>=b.开始号码 and a.号码<b.结束号码 group by b.地区
      

  3.   

    用游标需要两个,而且还要循环统计,比“ chinarm() ”的方法估计还要慢;你可以试试看,从这两种方法任选一种吧。建议使用“ chinarm() ”的方法。