以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]表达式列如何对“字符型”数字运算? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=68906) |
||||
-- 作者:whyfoxtable -- 发布时间:2015/5/27 11:42:00 -- [求助]表达式列如何对“字符型”数字运算? 表A的十个列皆是字符型,现增加第十一列,双精度型的表达式列。 需求是:第十一列对前十列求和。 实际应用中,无数用convert([第一列],System.Double)这个表达式来实现目的。 现求助,如何做? |
||||
-- 作者:大红袍 -- 发布时间:2015/5/27 11:42:00 -- convert([第一列],\'System.Double\') |
||||
-- 作者:Bin -- 发布时间:2015/5/27 11:45:00 -- isnull(convert([第一列],\'System.Double\'),0)+isNULL(convert([第二列],\'System.Double\'),0) 以此类推 |
||||
-- 作者:whyfoxtable -- 发布时间:2015/5/27 12:50:00 -- [求助][求助]这次加了加''。还是不行!再次求助。 谢谢楼上两位!没注意到要加\'\'.但加了还是不行,见下图. [此贴子已经被作者于2015/5/27 13:09:53编辑过]
|
||||
-- 作者:Bin -- 发布时间:2015/5/27 13:41:00 -- http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=68912 |
||||
-- 作者:大红袍 -- 发布时间:2015/5/27 14:12:00 -- 如果提示错误,说明,你第一列的数据不能转成double类型,比如 汉字肯定是不能转的啊。
再有,你第一列为什么不弄成数值列啊。 |
||||
-- 作者:whyfoxtable -- 发布时间:2015/5/27 14:26:00 -- [求助]试过,还是不行,我把文件附在附件上吧。 第一列不做成数值列的原因:这里“第一列”仅用来代表任意一列,此列内容是把另一个二维表格内容转化成一维内容,故会有字符和数字的混同。 汉字不能转化为双精度小数,这能理解。但即使我用1,2,3等字符填充第一列,仍不能用Convert([第一列],\'System.Double\')形式。
|
||||
-- 作者:大红袍 -- 发布时间:2015/5/27 14:27:00 -- 看6楼,不可能。你得一列必须全部都是可转换的,才不会报错。 |
||||
-- 作者:大红袍 -- 发布时间:2015/5/27 14:29:00 -- 而且,必须加上单引号
convert(第一列,\'System.Double\') |
||||
-- 作者:大红袍 -- 发布时间:2015/5/27 14:31:00 -- 以下是引用whyfoxtable在2015/5/27 14:26:00的发言:
第一列不做成数值列的原因:这里“第一列”仅用来代表任意一列,此列内容是把另一个二维表格内容转化成一维内容,故会有字符和数字的混同。
如果有数值和字符,建议去编写Datacolchanged事件,不要用表达式列
http://www.foxtable.com/help/topics/1469.htm
|