我想给DBGRID显示这样的一列:该列的数据在数据库中是没有的,它是通过该数据库中的其它一列或两列经过运算得出的。

解决方案 »

  1.   

    将该DBGRID连接数据集增加一个或多个引用字段或计算字段
      

  2.   

    先在你的数据集上(QUERY,TABLE)等双击再NEW加上你想要的字段(如HEJI)
    类型FLOAT,属性是calculated
    在代码中你用
    query.fieldbyname('HEJI').AsFloat:=query.fieldbyname('HEJI1').AsFloat+
    query.fieldbyname('HEJI2').AsFloat;
      

  3.   

    to bee2518(真棒):我想要当HEJI2中的数据为“1”且data=5 (程序中另外设置的)时 HEJI显示为“是”,这该如何写?
      

  4.   

    说错了 是计算字段
    象上面那样做 然后 
    试试把你的判断 写在 TableCalcFields事件
      

  5.   

    双击table控件,在弹出的编辑框中单击右键,选择add all fields...
    再次单击右键,选择new field...进行设置如XXX
    在table的onCalcFields事件编码
    table1XXX.value:=table1AAA.value+table1BBB.value+table1CCC.value;
    说明:
    AAA,BBB,CCC都是字段名,类型为integer,double,currary等。
      

  6.   

    直接把要显示的数据传到一个ClientDataSet里不就行了么,你想怎么显示就怎么显示
      

  7.   

    用Tquery组件,在查询结果集中添加你所要添加的列。
      With Query1 do
      Begin
        Close;
        Sql.Clear;
        Sql.add('Select ... ...,sum(...),sum(...) From Table1 a,Table2 b, Table3 c');
        Sql.add('Where ...... and ......'); 
        Sql.add('Group by ......');
        Open;
      End;
      

  8.   

    在相应的 QUERY中增加一个计算字段就行,方法很多了
      

  9.   

    使用计算字段方法:
    先在你的数据集上(QUERY,TABLE)等双击再NEW加上你想要的字段(如HEJI)
    类型STRING,属性是calculated
    在代码中你用
    if 条件成立 then
    query.fieldbyname('HEJI').AsSTRING:='是'
      

  10.   

    使用计算字段方法:
    先在你的数据集上(QUERY,TABLE)等双击再NEW加上你想要的字段(如HEJI)
    类型STRING,属性是calculated
    在QUERY的onCalcFields事件编码
    在代码中你用
    if 条件成立 then
    query.fieldbyname('HEJI').AsSTRING:='是'