MySQL:查询如何使用分隔符逗号计算值

时间:2019-02-20 06:25:52

标签: mysql sql varchar comma separator

现在我正在使用SQL,并且希望对populasi和luas列中的值求和。问题在于该列的表结构为varchar。所以我无法计算。

这是桌子:

enter image description here

有人可以帮助我解决吗?还是谢谢你

2 个答案:

答案 0 :(得分:0)

使用replace()cast()替换逗号并将其转换为十进制

select pulau, cast(replace(populasi,',','') as decimal(16,8)),  cast(replace(luas,',','') as decimal(16,8))
from tablename

答案 1 :(得分:0)

您需要从数字中删除.,并用,替换.,然后才能SUM。尝试这样的事情:

SELECT pulau,
       SUM(REPLACE(REPLACE(populasi, '.', ''), ',', '.')) AS populasi, 
       SUM(REPLACE(REPLACE(luas, '.', ''), ',', '.')) AS luas
FROM yourtable
GROUP BY pulau