Tecnología

Inicio

Diferencia entre numéricos decimales en SQL

Diferencia entre numéricos decimales en SQL


Los datos almacenados en bases de datos de Oracle pueden parecen bastante igual, pero ser bastante diferentes, en función del tipo definido del objeto. Un tipo se asigna a cada constante, variable y de parámetros en la base de datos. Un número se puede almacenar como una variedad de tipos de números escalares dependiendo del diseño y el uso previsto de la base de datos.

Los subtipos de números

En SQL, un número es un tipo de datos que se puede asignar a los datos, y se define como un valor exacto o aproximado. Varios subtipos de datos serie son comparables entre sí. El subtipo de datos de números asignado determina la precisión de los datos.

vs. NUMÉRICO formato decimal

De acuerdo con el estándar SQL-92, decimal debe ser exactamente tan preciso como declaró, mientras numéricas deben ser al menos tan precisa como declarado. En la práctica, generalmente existe ninguna diferencia sustancial entre los subtipos numéricos y decimales. Todos los paquetes de bases de datos comerciales - incluyendo MySQL, Transact-SQL y Oracle - tratan numeric y decimal como sinónimos.

Escala y Precisión

Ambos subtipos NUMERIC y DECIMAL son controlados por la precisión y la escala de variables. El formato correcto para cada tipo de datos es numérico (precisión, escala) o DECIMAL (precisión, escala). La precisión se refiere al número permitido de dígitos significativos en los datos, y puede alcanzar un máximo de 38 dígitos. Este es el valor por defecto si no se especifica la precisión. Escala determina el punto de redondeo. La escala puede variar de -84 a 127. Los números positivos afectan a redondear a la derecha del punto decimal, mientras que los números negativos afectan a redondear a la izquierda del punto decimal. Por ejemplo, una escala de 3 redondearía a la milésima (9,8765 se convierte en 9.877). Cero redondea al número entero más próximo, y es el valor por defecto si no se especifica escala.

Número otros subtipos

El número de subtipos DOUBLE PRECISION y el flotador se puede utilizar para declarar los números de punto flotante con una precisión máxima de 38 dígitos decimales. El VERDADERO subtipo puede utilizarse para declarar los números de coma flotante con una precisión máxima de 18 dígitos decimales. El número entero subtipo se puede utilizar para declarar enteros con una precisión máxima de 38 dígitos decimales.