求助C#取值计算..
数据库类型
ID int
Ecun nvarchar(50)
Nqu nvarchar(50)
表
ID Ecun Nqu
1 2000 NULL
2 NULL 500 from m
3 500 null
4 null 455.5
请问我如何取出Ecun 的总和 然后减去Nqu 得出结果 (就像银行存取一样。。。算结余) 请各位帮帮忙。。谢谢 --------------------编程问答-------------------- 存一次或取一次就更新数据库,这样数据库里的就是结余了 --------------------编程问答-------------------- 500 from m
这种字符串你准备怎么处理?
一般来说SUM(Ecun)-SUM(Nqu)就可以了,但你那两个字段做成nvarchar的,还允许填入明显不能转成数字的字符串。那样的话你怎么可能算出结果? --------------------编程问答-------------------- select sum(cast(nullif(Ecun,0) as int)) - sum(cast(nullif(nqu,0) as int)) from 表 --------------------编程问答--------------------
你说的不对啊..我现在是要这样的.存的总数-每次取的钱=结余 --------------------编程问答--------------------
麻烦就是在这里..
这个500 from m 可以处理.....你说的SUM(Ecun)-SUM(Nqu)也是不行的..我数据库里是字符串 而且如果是数字的话.我要的也是这样的效果Sum(ECUN)-Nqu=结余 --------------------编程问答-------------------- 两个字符串做加减法能得到你要结果?你说得明显是数字的运算嘛 --------------------编程问答--------------------
你真要那么做的话就要绕很大个圈子,不要放到sql里做,弄个实体类 包含属性 id,ecun,nqu 。
数据库查出来的值赋进去作为一个数据集,ecun,nqu设定为double,当为null,或者没法转为double时赋值0,那样你可以用循环算出ecun的总合,随你喜欢去减任何一个nqu --------------------编程问答-------------------- 一个小建议,别在这上边浪费脑细胞了,重新设计设计数据库吧
补充:.NET技术 , C#