sql >> Base de Datos >  >> RDS >> Sqlserver

¿Por qué la precisión disminuye cuando se multiplica la suma a otro número?

Agregando un numeric(18, 8) con SUMA da como resultado el tipo de datos numeric(38, 8) .

Cómo se calcula el tipo de datos resultante al multiplicar algo con numérico se puede encontrar aquí:Precisión , escala y longitud (Transact-SQL)

El tipo de datos para su constante -1 es numeric(1, 0)

La precisión es p1 + p2 + 1 =40
La escala es s1 + s2 =8

La precisión máxima es 38 y eso te deja con numeric(38, 6) .

Lea más sobre por qué es numeric(38, 6) aquí:Multiplicación y división con números