一个表A记录的一些部门人员信息数据,结构如下:bmname(部门)   rname(人员姓名)     ddno(订单编号) 
--------------------------------------------------------- 
销售部                 张三          123456
销售一部               李四          123123
销售二部               赵五          324234
清算部                 攫工          456456
...其中销售一部与销售二部隶属于销售部,现再要查询出这样的结果部门        清算部订单数
---------------------------------
销售部            3
清算部            1
...
请问如何查呢?谢谢

解决方案 »

  1.   

    SELECT SUBSTR(BMNAME, 1, 2) || '部', COUNT(1)
      FROM DPMT
     GROUP BY SUBSTR(BMNAME, 1, 2);如果部门都是三个字的,这样应该可以吧
      

  2.   

    包括名称也没有规则,比如判定带“销售”字样的认为是销售部。如果可以,那么group by substr(bmname,1,4)还可以。实在没规则的话,就只能decode判定了
      

  3.   

    1. 在原有表中增加一个部门分类字段,再依据这个字段,进行统计
    2. 增加一张部门维表,通过维表,进行统计注,肯定有一些规则,否则无法统计,退一步说,这些规则可能无法简单的通过一个查询SQL搞定而已。
    退而求次,将这些部门重新规整后,再统计就是。