要完成如下统计(oracle)涉及三张表:YYXXB(医院信息表)(yybh 医院编号,yymc 医院名称)
            ZHZFB(账户支付表) (sqbh 申请编号,grzhzf 个人账户支付,tczhzf 统筹账户支付,zfyybh 支付医院编号)
            ZGRZSQB(职工入转申请表) (sqbh 申请编号, rylb 人员类别)
其中:YYXXB(医院信息表).(yybh医院编号)为主键,      且为ZHZFB(账户支付表)的外键 zfyybh(支付医院编号)
      ZGRZSQB(职工入转申请表).sqbh(申请编号)为主键,且为ZHZFB(账户支付表)的外键 sqbh(申请编号)
要求:以医院分组,分别统计出每个医院的各种人员类别(0,在职,1,保健,2,退休)的人数、个人账户支付(合计)、统筹账户支付(合计),
也就是:以医院分组,再以人员类别分组,统计出ZHZFB(账户支付表)的两个字段合计及人次合计

解决方案 »

  1.   


      SELECT   hos.yymc,
               req.rylb,
               COUNT (req.sqbh) AS "申请人数",
               SUM (pay.grzhzf) AS "个人账户支付",
               SUM (pay.tczhzf) AS "统筹账户支付"
        FROM   yyxxb hos, zhzfb pay, zgrzsqb req
       WHERE   hos.yybh = pay.zfyybh AND pay.sqbh = req.sqbh
    GROUP BY   hos.yymc, req.rylb
    你要根据实际情况看看要不要用到外连接