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

问题描述 投票:0回答:2

现在我正在使用SQL并希望在populasi和luas列中加总值。问题是该列的表结构是varchar。所以我无法计算它。

这是表格:

enter image description here

有人可以帮我解决吗?不管怎么说,还是要谢谢你

mysql sql varchar comma separator
2个回答
0
投票

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

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

0
投票

你需要从数字中删除.s,并用,s替换.s,然后你就可以SUM了。尝试这样的事情:

SELECT pulau,
       SUM(REPLACE(REPLACE(populasi, '.', ''), ',', '.')) AS populasi, 
       SUM(REPLACE(REPLACE(luas, '.', ''), ',', '.')) AS luas
FROM yourtable
GROUP BY pulau
© www.soinside.com 2019 - 2024. All rights reserved.