首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

BCB能实现这样的一个操作吗?该怎么解决

2012-03-26 
BCB能实现这样的一个操作吗?我在表A中有两组数列1是125,列2是225,列3是255,列4是325,列5是115问题1、如何把

BCB能实现这样的一个操作吗?
我在表A中有两组数列1是125,列2是225,列3是255,列4是325,列5是115
问题1、如何把列一的各个数相加,比如1+2+5=?显示在该表的另一列
问题2、如何把列1与列2的尾数相加,或把列1首位与列2尾位相加,再显示在该表的别一列


请问各位高手可以做到吗,如果办不到,能有什么办法解决吗?

[解决办法]
问题1、如何把列一的各个数相加,比如1+2+5=?显示在该表的另一列 
问题2、如何把列1与列2的尾数相加,或把列1首位与列2尾位相加,再显示在该表的别一列 

问题1:
table->open();
table->edit();
//如果表中所有数据相加,循环下面一句
table->fieldbyname("列6")->integer=table->fieldbyname("列1")->integer+table->fieldbyname("列2")->integer+table->fieldbyname("列5")->integer;
//循环结束
table->post

[解决办法]
你可能是搞不清楚转换SQL中的函数,给你写一个简单的语句,你自己替换多实验几次。
select cast (substring(FieldName,1,1) as int )+cast (substring(FieldName,2,1) as int )as c from TableName

取字段的第1个字节转换为INT + 取了字段的第二位转换为INT
substring 转换为字符串截位
cast 转换为int型再计算。

其他的功能你参照这个思路自己 组合一下。

热点排行