
数据库的求和,如果我的一列是用VARCHAR类型,保存的数据比如是339,369这样的金额数据,怎么才能相加?
2个回答
展开全部
从你的VARCHAR类型来看,不是ORACLE的数据库
ORACLE数据库是使用TO_NUMBER()来实现字符到数字的转换的。不过ORACLE里面这个类型叫VARCHAR2或者CHAR
你的应该是SQLSERVER一类的数据库吧?
select sum(CAST(列名 AS INT)) from 表
如果金额有小数位,那就把INT改成DECIMAL(10,2)这样
ORACLE数据库是使用TO_NUMBER()来实现字符到数字的转换的。不过ORACLE里面这个类型叫VARCHAR2或者CHAR
你的应该是SQLSERVER一类的数据库吧?
select sum(CAST(列名 AS INT)) from 表
如果金额有小数位,那就把INT改成DECIMAL(10,2)这样
更多追问追答
追问
是SQLserver05的,金额是339,369,中间有逗号,也就是339369,也能用吗?麻烦你了
追答
不能用,要先把逗号去掉,用REPLACE函数试试
select sum(CAST(REPLACE(列名,',','') AS INT)) from 表
先把逗号去掉,然后转化成数字,在做加
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |