Questions tagged «decimal»

3
将逗号作为小数点分隔符的字符串数值转换为NUMERIC(10,2)
我有一个varchar列的SQL表,其中包含希腊格式的数字(。作为千位分隔符,而逗号作为十进制分隔符) 经典转换 CONVERT(numeric(10,2),REPLACE([value],',','.')) 不起作用,因为。(千位分隔符)杀死转换 例如尝试 CONVERT(numeric(10,2),REPLACE('7.000,45',',','.')) 我想将这些值转换为数字(10,2) 关于如何处理的任何建议?

3
自动十进制舍入问题
这个问题相对简单。我需要计算3列,中间结果是很大的小数,并且SQL Server早就遇到了一个问题,即无论是否进行任何类型的转换,SQL Server基本上都会舍入小数。 例如,让我们做一个简单的除法1234/1233。计算器将产生1,00081103000811。但是,当我在SQL Server上执行此操作时,我们得到以下信息: -- Result: rounded at 1.000811000... with trailing zeroes up until the 37 precision SELECT CAST(CAST(1234 AS DEC(38,34))/CAST(1233 AS DEC(38,34)) AS DEC(38,37)) -- Result: rounded at 1.000811 SELECT CONVERT(DECIMAL(38,32), 1234)/CONVERT(DECIMAL(38,32),1233) -- Correct result at 1,00081103000811 -- But this requires the zeroes to be put in manually …

2
将整数强制转换为上限(十进制)的问题
我有这种情况,看起来MySQL正在采用最大的十进制值,并尝试将其他值转换为该值。 问题是此查询是由外部库生成的,因此至少在此级别上我无法控制此代码。您知道如何解决此问题吗? SELECT 20 AS x UNION SELECT null UNION SELECT 2.2; +------+ | x | +------+ | 9.9 | -- why from 20 to 9.9 | NULL | | 2.2 | +------+ 预期结果 +------+ | x | +------+ | 20 | -- or 20.0, doesn't matter really in my …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.