统计江西全省,各地级市的分线盒情况。表头:
省份、地市、县级市、分线盒总数、分线盒占用数、分线盒利用率有teqy区域表mc名称属性bm编码属性(唯一)
--tezqy子区域表,tejz表bm编码(唯一),mc名称,qybm区域编码跟teqy.bm相同
tedp分线盒表jzbm局站编码,rangeid所属区域id与teqy.bm相同
tejz局站表qybm区域编码

解决方案 »

  1.   

    大体的SQL文是这样的:
    select t.mc,count(d.*),j.mc
    from teqy t inner join tedp d on t.id=t.bm
    inner join tejz j on j.bm=t.bm
    group by t.mc,j.mc
    你再根据你的需求将显示内容写到select中,然后将该SQL文加到存储过程中即可。
    CREATE PROCE AA
    ...
    SQL文
    GO
      

  2.   

    经过我冥思苦想 大概想出来一点  跟二楼的差不多(谢谢二楼)
     select '江西' as 省份,t3.mc as 地级市,t4.mc as 县级市,count(1) as 分线盒总数 
         into p_province,p_city,p_county,p_sum
         from tedp t1,tejz t2,tcqy t3,tczqy t4 where t4.qybm = t3.bm 
         and t4.bm = t2.zqybm and t1.jzbm = t2.bm  group by t4.mc,t3.mc
    这样虽然统计出来数据 但是后面两个数据都没出来
    于是我加了这一条 count( bm in (select bm from tedp where sszt in ('在用','已用','使用'))) 但是执行报错ORA-00907 missing right parenthesis
      

  3.   

    count( bm in (select bm from tedp where sszt in ('在用','已用','使用')))bm  这个能识别出来么?  
      

  4.   

     select '江西' as 省份,t3.mc as 地级市,t4.mc as 县级市,count(1) as 分线盒总数
     from tedp t1,tejz t2,tcqy t3,tczqy t4 where t4.qybm = t3.bm and t4.bm = t2.zqybm 
     and t1.jzbm = t2.bm  group by t4.mc,t3.mc;  select '江西' as 省份,t3.mc as 地级市,t4.mc as 县级市,count(1) as 使用中分线盒数
     from tedp t1,tejz t2,tcqy t3,tczqy t4 where t4.qybm = t3.bm and t4.bm = t2.zqybm 
     and t1.jzbm = t2.bm and  t1.sszt in ('在用','已用','使用') group by t4.mc,t3.mc;
    最后只能这样查出两条  使用中分线盒,分线盒总数    但是使用率就没法弄了 
    求助高手怎么写这个存储过程