我这里有一个主表:
BillCode        CoutName
0100001         公司1
0100002         公司1
0100003         公司2从表
BillCode        Number
0100001         24
0100001         523
0100001         41
0100002         582
0100002         41
0100003         54现在我需要汇总主从表的数据,格式如下
CoutName        Number
公司1           1211
公司2           54意思就是,汇总每个公司出货的总数量,其中数量就是一个简单的加总。我自己写了一个SQL,但是可以分组,却没有数量显示出来:
  SQLStr := 'select T_Bill.CoutName,sum(T_BillDetail.iNumber) from '+   
            'T_Bill,T_BillDetail group by T_Bill.CoutName ';  with frmDM.qryTmp do
  begin
    Close;
    SQL.Clear;
    SQL.Add(SQLStr);
    Open;
  end;
  
到底那里出问题了呢?请大家帮帮我!!Access数据库

解决方案 »

  1.   

    select a.coutname,sum(b.Number) from t_bill a left join t_billDetail b on a.billcode=b.billcode  group by a.coutname
      

  2.   

    SQLStr := 'select T_Bill.CoutName,sum(T_BillDetail.iNumber) from T_Bill as A inner join T_BillDetail as B on A.billcode=B.billcode group by T_Bill.CoutName 
      

  3.   

    select M.BillCode ,D.CoutName,sum(M.Number) as Number  from 从表 M
    left outer join 主表 D on M.BillCode=D.BillCode
    group by M.BillCode 
      

  4.   

    TO:bdmh 提示“参数T_Bill.CoutName没有默认值”
      

  5.   

    SQLStr := 'select T_Bill.CoutName,sum(T_BillDetail.iNumber) from T_Bill,T_BillDetail 
    where  T_Bill.billcode=T_BillDetail.billcode
    group by T_Bill.CoutName '; 
      

  6.   

    TO:nbzip
    运行的结果还是跟我原来的语句一样,只有企业名字,没有数量加总
      

  7.   

    终于让我试出来了,是这样的:  SQLStr := 'select a.coutname,sum(b.iNumber) as iNumber from t_bill a left join t_billDetail b on a.billcode=b.billcode  group by a.coutname' ;
      with frmDM.qryTmp do
      begin
        Close;
        SQL.Clear;
        SQL.Add(SQLStr);
        Open;
      end;