将 Substring 转换为数字以执行乘法
Convert Substring to numeric to perform multiplication
在编译这行时遇到一些困难。
我有一个字段,比方说 AUD 1200.50,我需要将该值乘以 0.019,但由于 AUD 的缘故不能这样做。
我最好的猜测是使用子字符串删除领先的货币格式,然后执行乘法运算,但我还需要先将其转换为数字,这就是我卡住的地方。
我尝试了几种不同版本的转换和转换,但我当前的版本看起来像这样
SELECT convert(decimal,substring('AUD 1,200.50',4,10)) * 0.019
最终,此处的 AUD 文本值将替换为来自 SAP B1 的动态语法字段,这将提供相同的结果,因此它看起来像这样。一直给我关于将 varchar 转换为数字的错误。
SELECT convert(decimal,substring($[.0.0],4,10)) * 0.019
我确定我很接近,但只是有点想念它。一如既往地感谢您的帮助。
看起来逗号可能会破坏 decimal
转换。在将其转换为 decimal
.
之前尝试删除所有逗号
CONVERT(decimal, REPLACE(SUBSTRING('AUD 1,200.50', 4, 10), ',', ''))
在编译这行时遇到一些困难。
我有一个字段,比方说 AUD 1200.50,我需要将该值乘以 0.019,但由于 AUD 的缘故不能这样做。
我最好的猜测是使用子字符串删除领先的货币格式,然后执行乘法运算,但我还需要先将其转换为数字,这就是我卡住的地方。
我尝试了几种不同版本的转换和转换,但我当前的版本看起来像这样
SELECT convert(decimal,substring('AUD 1,200.50',4,10)) * 0.019
最终,此处的 AUD 文本值将替换为来自 SAP B1 的动态语法字段,这将提供相同的结果,因此它看起来像这样。一直给我关于将 varchar 转换为数字的错误。
SELECT convert(decimal,substring($[.0.0],4,10)) * 0.019
我确定我很接近,但只是有点想念它。一如既往地感谢您的帮助。
看起来逗号可能会破坏 decimal
转换。在将其转换为 decimal
.
CONVERT(decimal, REPLACE(SUBSTRING('AUD 1,200.50', 4, 10), ',', ''))