select 
    b.vdSubid,
    vdBorrow = sum(b.vdBorrow),
    vdLend   =sum(b.vdLend)
from 
    bSubject a,
    tVoucherdet  b
where
    a.subClass <= [N] and b.vdSubid like a.subId+'%'   --此处的N即级别编号
group by 
    b.vdSubid
order by 
    b.vdSubid

解决方案 »

  1.   

    刚才三级查询应该是这个结果:
    vdSubid   vdBorrow   vdLend
    101                   1000
    10101                 1000
    102        9000
    10201      9000
    1020101    1000
    1020102    8000
    203                   5200
    204                   2800to libin_ftsafe(子陌红尘):
    谢谢你!
      

  2.   

    to libin_ftsafe(子陌红尘):谢谢你,你的这种方法速度太慢了,我在Sql的查询分析器里可以查询出结果,在系统里运行的时候出现超时。
    能不能再修改一下,还有你上面的代码应该是这样子的:
    select 
        a.Subid,
        vdBorrow = sum(b.vdBorrow),
        vdLend   =sum(b.vdLend)
    from 
        bSubject a,
        tVoucherdet  b
    where
        a.subClass <= [N] and b.vdSubid like a.subId+'%'   --此处的N即级别编号
    group by 
        a.Subid
    order by 
        a.Subid