我想合计DBGrid中某一列的数据,然后把值传给一个变量,具体怎么写????

解决方案 »

  1.   

    var
      amount:real;
    begin
      amount ;= 0.0;
      adoquery.first;
      while noe adoquery.eof do
      begin
        amount := amount + adoquery.FieldByName('field').AsFloat;
        adoquery.next;
      end;
      

  2.   

    你用的是什么呢?
    BDEquery?还是ADoquery?
    ADOquery楼上已经回答了
    BDEquery好像无法选定某列,不过可以获取字段名程以后用SQL语句实现如果你获得了BDEquery选定某列的方法,
      

  3.   

    如果你获得了BDEquery选定某列的方法,请告之,我也研究好久不得其解
      

  4.   

    adoquery1.colse;
    adoquery1.sql.clear;
    adoquery1.sql.add(select n =sum(你要合计的列) from t  );
    adoquery1.open.//或adoquery1.execsql;  
    //n:你要给的变量(字段),t表示你的DBGrid联的表
    当然,楼上的也能完成你想要的结果
      

  5.   

    直接用SQL语句,效率高.select sum(field) from table
      

  6.   

    sql好办些,如果不是batch的话。
    还是ado好些,dbe有点过时了,又麻烦。
      

  7.   

    DBGrid1.DataSource.DataSet.RecordCount