SUM字符串字段TQuery - Delphi v7

时间:2014-03-01 06:47:10

标签: sql delphi delphi-7

Delphi v7

我试图在dbGrid中对一列进行求和。应该很容易,但我似乎无法完成它。该字段是一个字符串字段。

到目前为止我创建的代码是:

Query1.Close;
Query1.SQL.Text := 'SELECT SUM(field) FROM "mytable"';
form1.Query1.Open;
Edit1.Text := form1.Query1.Fields[0].AsString;

看来我必须将字符串字段中的数据转换为整数。对我来说似乎没什么好事,但我尝试的都没有。可以在这里使用一点帮助: - )

2 个答案:

答案 0 :(得分:0)

帮助您摆脱这个问题。正如评论中所提到的,解决方案在查询中,而不在Delphi代码中:

Query1.SQL.Text := 'SELECT SUM(VAL(field)) AS RESULT FROM "mytable"';

VAL(语法取决于您使用的数据库)将字段转换为值,然后将求和。

答案 1 :(得分:0)

我用谷歌搜索了db的优势。您可以尝试从“mytable”中选择sum(cast(“field”as CURRENCY))。不会处理具有非数字值的列。最好的猜测,因为我在公共汽车上花了超过5分钟回答。