有点难度,思路就是使用多个select语句首先把治愈情况的结果统计出来,然后再group by ICDM,试一下再告诉你吧

解决方案 »

  1.   

    老兄在做电子病历吧?
    同志啊.
    在这里面有大量类似的交叉报表,
    我也一直头疼,因为要写很多代码来排列报表格式.
    如果能直接用SQL语句实现就好了
    有哪位能解决我也要送他50分
    决不失言
    多多交流吧
    我的QQ是45997433
    [email protected]
      

  2.   

    再加一个表:ICDM表:字段有ICDM,其它的字段可以不管;
    SQL语句为:(已在SQL SERVER 7。0和SQL SERVER 2000上通过,快给分吧!!)
    select T1.icdm,T2.ZY 治愈,T3.WY 未愈,T4.QT 其它
    From 
      (Select icdm From icdm) T1,  (select TB1.icdm,TB2.zy From icdm TB1
        left Outer join 
          (select icdm,IsNull(Count(icdm),0) zy From cyqk 
            Where zyqk='治愈'group by icdm) TB2 
        On TB1.icdm=TB2.icdm) T2,  (select TB1.icdm,TB2.wy From icdm TB1
        left Outer join 
          (select icdm,IsNull(Count(icdm),0) wy From cyqk 
            Where zyqk='未愈'group by icdm) TB2 
        On TB1.icdm=TB2.icdm) T3,  (select TB1.icdm,TB2.qt From icdm TB1
        left Outer join 
          (select icdm,IsNull(Count(icdm),0) qt From cyqk 
            Where zyqk='其它'group by icdm) TB2 
        On TB1.icdm=TB2.icdm) T4where T1.icdm=T2.icdm
    And T1.icdm=T3.icdm
    And T1.icdm=T4.icdm
      

  3.   

    还有在实际的应用中你也会有一个ICD编码字典表,以上面的情况,ICD编码字典表的内容为001,002,003,004,005等!!
      

  4.   

    在实际中是有一个ICDBM表,它是存放所有ICDBM的字典
      

  5.   

    你是不是没有加表,并且字段要有ICDM字段,类型为CHAR,表名为ICDM,并且是SQL SERVER数据库!!
      

  6.   

    查询结果在SQL SERVER 的查询分析器中0显示为NULL,在DELPHI中则显示为0,并且速度并不慢。
    在用SQL语句查询数据时,速度慢,一般是返回的数据集太大的原因!
      

  7.   

    select icdm,case when zyqk = '治愈' then count(icdm) else 0 end,case when zyqk = '未愈' then count(icdm) else 0 end,case when zyqk = '其它' then count(icdm) else 0 end
    from test1
    group by icdm,zyqk
    order by icdm
      

  8.   

    偶目前也在写HIS,有空多交流阿
    这个SQL暂时还有点不妥,容我先去研究一下
      

  9.   

    Select TB1.icdm,sum(TB1.治愈) 治愈,Sum(TB1.未愈) 未愈,Sum(TB1.其它) 其它 From
    (select icdm,
    case when zyqk = '治愈' then count(icdm) else 0 end 治愈,
    case when zyqk = '未愈' then count(icdm) else 0 end 未愈,
    case when zyqk = '其它' then count(icdm) else 0 end 其它
    from cyqk
    group by icdm,zyqk) TB1 
    group by tb1.icdm