我有一个名为net_amount的列,它包含像244,98这样的值。它是一个varchar列。当我尝试使用sum函数对其求和时,它只对244求和,并跳过了小数点后几位。我尝试将其转换为小数,如下所示:
select cast(net_amount as decimal) from mytable这也跳过了小数位。你知道可能出了什么问题吗?
谢谢!
发布于 2013-03-07 17:02:12
您可以使用REPLACE将逗号替换为点:
SELECT REPLACE('244,98', ',', '.') * 1或者您可以像这样使用CAST:
cast(REPLACE(net_amount, ',', '.') as decimal(8,2)) https://stackoverflow.com/questions/15266871
复制相似问题