decimal y numeric (Transact-SQL)

Tipos de datos numéricos que tienen precisión y escala fijas.

  • decimal[ **(**p[ **,**s] )] y numeric[ **(**p[ **,**s] )]
    Números de precisión y escala fijas. Cuando se utiliza la precisión máxima, los valores válidos se sitúan entre - 10^38 +1 y 10^38 - 1. Los sinónimos de ISO para decimal son de tipo dec y dec(p, s). numeric es funcionalmente equivalente a decimal.

  • p (precisión)
    El número total máximo de dígitos decimales que se puede almacenar, tanto a la izquierda como a la derecha del separador decimal. La precisión debe ser un valor comprendido entre 1 y la precisión máxima de 38. La precisión predeterminada es 18.

  • s (escala)
    El número máximo de dígitos decimales que se puede almacenar a la derecha del separador decimal. La escala debe ser un valor comprendido entre 0 y p. Sólo es posible especificar la escala si se ha especificado la precisión. La escala predeterminada es 0; por lo tanto, 0 <= s <= p. Los tamaños de almacenamiento máximo varían, según la precisión.

    Precisión

    Bytes de almacenamiento

    1 - 9

    5

    10-19

    9

    20-28

    13

    29-38

    17