我用ADO+ACCESS,现在想在查询出来的记录中对其中一个字段进行求和,
然后显示出来。。例如,表中有(姓名,车辆号,送货数量 三个字段),就是想
根据查询条件查询到记录后,把送货数量进行求和,然后用一个组件显示出来
如果对DBGRID用循环相加应该怎样写呀(我用DBGRID显示记录...)
同时我还想问能否用SQL来实现,能否给个例子...
因初学delhpi,所以很多不是很明白请各位大哥指教下。。
找到答案后马上结贴,新手没有太多分,还望各位帮帮我。。

解决方案 »

  1.   

    用DBGridEH吧,有Footer属性,自动求和
      

  2.   

    只是求和的话用SQL语句可以实现:select sum(送货数量) as 送货数量 form 表 where 条件
      

  3.   

    强烈建议用ehlib中的DBGridEH
    1.先设DBGridEH的footerrowcount为1
    2.将要显示的字段加入DBGridEH
    3.将DBGridEH要统计的字段的footer中的valtype改为fvtsum
    用sql也可以,不过不能方便地在DBGrid中显示
      

  4.   

    先求和
      select sum(送货数量) from 表 where 条件;
      edit1.text:=adoquery.fields[0].asstring;
    再显示记录
      select 姓名,车辆号,送货数量 from 表 where 条件;//条件与求和条件相同.
      

  5.   

    1。用SQL直接写,求和。
    2。在数据集查询打开后,用循环求和,效率低,不如第一种方法。
       first;
       while not eof do
       begin
         //累加求和
       end;
    3.第三方控件dbgrideh,设置很简单。
      

  6.   

    比如:select sum(送货数量) from table where 车辆号 = '00001'
      

  7.   

    1.
    DBGRID控件的dataset
    ds.first;
    iSum := 0;
    while not ds.eof do
    begin
      iSum := iSum + ds.fieldbyname('求各字段').asinteger;
      ds.next;
    end;
    得到iSum2.SQL
    select sum('求和字段') from 表 where 日期 > '1900-8-1'
      

  8.   

    用Ehlib控件包中的DBGridEh吧,只需设置一下Footer属性,即可实现列的求和功能
      

  9.   

    DBGridEH
    呵呵select 姓名,车辆号,送货数量 from 表 where 条件
    union 
    select '合计','',sum('送货数量') from 表 where 条件
      

  10.   

    但我还有个问题想问。。就是点样取求和的值呀。。然后再用一个LABLE组件显示出来