Foxtable(狐表)用户栏目专家坐堂 → [求助]表达式列如何对“字符型”数字运算?


  共有2447人关注过本帖树形打印复制链接

主题:[求助]表达式列如何对“字符型”数字运算?

帅哥哟,离线,有人找我吗?
whyfoxtable
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1047 威望:0 精华:0 注册:2014/11/24 11:07:00
[求助]表达式列如何对“字符型”数字运算?  发帖心情 Post By:2015/5/27 11:42:00 [只看该作者]

表A的十个列皆是字符型,现增加第十一列,双精度型的表达式列。

需求是:第十一列对前十列求和。

实际应用中,无数用convert([第一列],System.Double)这个表达式来实现目的。

现求助,如何做?



 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 11:42:00 [只看该作者]

convert([第一列],'System.Double')

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/27 11:45:00 [只看该作者]

isnull(convert([第一列],'System.Double'),0)+isNULL(convert([第二列],'System.Double'),0)  以此类推

 回到顶部
帅哥哟,离线,有人找我吗?
whyfoxtable
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1047 威望:0 精华:0 注册:2014/11/24 11:07:00
[求助][求助]这次加了加''。还是不行!再次求助。  发帖心情 Post By:2015/5/27 12:50:00 [只看该作者]

谢谢楼上两位!没注意到要加''.但加了还是不行,见下图.



图片点击可在新窗口打开查看此主题相关图片如下:表达式.bmp
图片点击可在新窗口打开查看


[此贴子已经被作者于2015/5/27 13:09:53编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/27 13:41:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 14:12:00 [只看该作者]

 如果提示错误,说明,你第一列的数据不能转成double类型,比如 汉字肯定是不能转的啊。

 

 再有,你第一列为什么不弄成数值列啊。


 回到顶部
帅哥哟,离线,有人找我吗?
whyfoxtable
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1047 威望:0 精华:0 注册:2014/11/24 11:07:00
[求助]试过,还是不行,我把文件附在附件上吧。  发帖心情 Post By:2015/5/27 14:26:00 [只看该作者]

第一列不做成数值列的原因:这里“第一列”仅用来代表任意一列,此列内容是把另一个二维表格内容转化成一维内容,故会有字符和数字的混同。

汉字不能转化为双精度小数,这能理解。但即使我用1,2,3等字符填充第一列,仍不能用Convert([第一列],'System.Double')形式。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目tabtobase.rar


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 14:27:00 [只看该作者]

 看6楼,不可能。你得一列必须全部都是可转换的,才不会报错。

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 14:29:00 [只看该作者]

而且,必须加上单引号

 

convert(第一列,'System.Double')


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 14:31:00 [只看该作者]

以下是引用whyfoxtable在2015/5/27 14:26:00的发言:

第一列不做成数值列的原因:这里“第一列”仅用来代表任意一列,此列内容是把另一个二维表格内容转化成一维内容,故会有字符和数字的混同。


 

如果有数值和字符,建议去编写Datacolchanged事件,不要用表达式列

 

http://www.foxtable.com/help/topics/1469.htm

 


 回到顶部
总数 11 1 2 下一页