我想将money数据类型转换为小数,因为我想将结果记录到8位小数.
例如,在货币汇率表中,我将汇率存储为2871047428.20作为货币数据类型; 使用Microsoft SQL Management Studio,我希望将其除以10000000以实现结果287.10474282; 但实际上我得到的结果是287.1047.
我相信我只获得4位小数的原因是因为它是money数据类型,因此我认为前进的方法是将其转换为十进制数据类型....
这里比较左列的十进制值,右列的计算货币值:
DECLARE @money AS money SET @money = 2871047428.20 SELECT CAST(@money AS decimal(34,4)) / 10000000, @money / 10000000
另请参见Stack Overflow:
如何从SQL服务器中的money数据类型转换?
SQL Server 2005 varchar丢失小数位转换为小数