本帖最后由 heyongyin 于 2012-03-22 23:08:42 编辑

解决方案 »

  1.   

    freevalueid
    有这个字段吗?
      

  2.   


    有的。我修改如下,又好了。
       select f.checkvalue as pk_doc,
       sumamout.nc_begin_amount,
       d.localcreditamount as nc_credit_amount,
       d.localdebitamount as nc_debit_amount
       from 
         
      (select sf.checkvalue as pk_doc,
       sum(sd.localcreditamount) as sumcredit,
       sum(sd.localdebitamount) as sumdebit,
       sum(sd.localcreditamount) - sum(sd.localdebitamount) as nc_begin_amount
       from gl_freevalue sf
       left join gl_detail sd on sd.assid = sf.freevalueid
       where sd.dr = 0
       and sd.pk_corp in ('1004')
       group by sf.checkvalue) sumamout,
       gl_freevalue f   left join gl_detail d on d.assid = f.freevalueid
      where d.dr = 0
       and f.checkvalue = sumamout.pk_doc
       and d.pk_corp in ('1004')
      order by f.checkvalue