Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Valor Maximo y Minimo Decimal

Estas en el tema de Valor Maximo y Minimo Decimal en el foro de Mysql en Foros del Web. Hola Chicos, una consulta para los expertos ^^, alguien conoce sobre los valores minimos y maximos que pueda llegar a almacenar un campo de tipo ...
  #1 (permalink)  
Antiguo 28/02/2012, 17:10
 
Fecha de Ingreso: septiembre-2010
Mensajes: 53
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Valor Maximo y Minimo Decimal

Hola Chicos, una consulta para los expertos ^^, alguien conoce sobre los valores minimos y maximos que pueda llegar a almacenar un campo de tipo de dato decimal para Mysql y si saben en SQLServer pls pls pls..
  #2 (permalink)  
Antiguo 28/02/2012, 17:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Valor Maximo y Minimo Decimal

Los rangos máximos de representación de los tipos de dato en una base de datos los puedes en el manual de referencia. Es el prime rsitio a donde debes recurrir (salvo que quieras perder tiempo): Capítulo 11. Tipos de columna
Por su lado, los valores decimales se almacenan normalmente como punto flotante, y se expresan en notación exponencial
- Los datos FLOAT (4 bytes) van de -3.402823466E+38 a -1.175494351E-38, 0, y de 1.175494351E-38 a 3.402823466E+38.
Los datos de tipo DOUBLE (8 bytes) van de -1.7976931348623157E+308 a -2.2250738585072014E-308, 0, y de 2.2250738585072014E-308 a 1.7976931348623157E+308.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/02/2012, 13:42
 
Fecha de Ingreso: septiembre-2010
Mensajes: 53
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Valor Maximo y Minimo Decimal

Aqui pierdo el tiempo? =O
  #4 (permalink)  
Antiguo 29/02/2012, 14:32
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Valor Maximo y Minimo Decimal

Cita:
Iniciado por lilia_cv Ver Mensaje
Aqui pierdo el tiempo? =O
Probablemente no te estás explicando correctamente o no conoces la definición de los tipos de datos de un DBMS.
¿Qué entiendes por valor mínimo y máximo de un valor decimal?
Dame un ejemplo de lo que tu supones que es cada uno.

Los números decimales son expresiones numéricas de punto flotante.
¿Conoces el tipo de dato numérico de punto flotante y cómo se implementa?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 01/03/2012, 08:10
 
Fecha de Ingreso: septiembre-2010
Mensajes: 53
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Valor Maximo y Minimo Decimal

Haber parece que no estoy siendo clara tienes razon, lo preguntare de nuevo:
Que diferencia hay entre un tipo de dato Decimal y un tipo de Dato Float ?
Se que float va desde -3.402823466E+38 a -1.175494351E-38, 0, y de 1.175494351E-38 a 3.402823466E+38.
Y el decimal? lo que necesito saber es sobre los rangos específicos de valores,
Asi como un numero de tipo Double tiene una capacidad de hasta de -1.7976931348623157E+308 a -2.2250738585072014E-308, 0, y de 2.2250738585072014E-308 a 1.7976931348623157E+308.
o es que simplemente un tipo de dato decimal para ser aceptado como este tipo de dato debe tener la característica de tener un punto decimal? Lo pregunto porque existen tres tipos de datos diferentes para Mysql: Decimal, Float, Double.
Help
  #6 (permalink)  
Antiguo 01/03/2012, 08:10
 
Fecha de Ingreso: septiembre-2010
Mensajes: 53
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Valor Maximo y Minimo Decimal

Haber parece que no estoy siendo clara tienes razon, lo preguntare de nuevo:
Que diferencia hay entre un tipo de dato Decimal y un tipo de Dato Float ?
Se que float va desde -3.402823466E+38 a -1.175494351E-38, 0, y de 1.175494351E-38 a 3.402823466E+38.
Y el decimal? lo que necesito saber es sobre los rangos específicos de valores,
Asi como un numero de tipo Double tiene una capacidad de hasta de -1.7976931348623157E+308 a -2.2250738585072014E-308, 0, y de 2.2250738585072014E-308 a 1.7976931348623157E+308.
o es que simplemente un tipo de dato decimal para ser aceptado como este tipo de dato debe tener la característica de tener un punto decimal? Lo pregunto porque existen tres tipos de datos diferentes para Mysql: Decimal, Float, Double.
Help
  #7 (permalink)  
Antiguo 01/03/2012, 08:45
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Valor Maximo y Minimo Decimal

Bueno, ahora tu duda queda más clara.
El tema es así: FLOAT, DOUBLE, REAL, etc., son numeros de punto flotante, por lo que son valores por aproximación. Son útiles cuando se está trabajando con valores de grandes cantidades de decimales donde no se usan cifras exactas.
DECIMAL, en cambio, son valores de precisión, usados habitualmente cuando se requiere un valor exacto, como son los monetarios, por ejemplo.
Como te dije, ese tema se ve en extenso en el manual de referencia, donde está bien claro:

Cita:
El tipo FLOAT se usa para representar tipos numéricos aproximados. El estándar SQL permite una especificación opcional de la precisión (pero no del rango del exponente) en bits a continación de la palabra clave FLOAT entre paréntesis. La implementación de MySQL soporta esta especificación opcional de precisión, pero el valor de precisión se usa sólo para determinar el tamaño de almacenamiento. Una precisión de 0 a 23 resulta en una columna de precisión simple de cuatro bytes de tamaño FLOAT . Una precisión de 24 a 53 resulta en una columna de doble precisión de ocho bytes de tamaño DOUBLE .

Cuando se especifica la palaba clave FLOAT para tipos de columnas sin especificar la precisión, MySQSL usa cuatro bytes para almacenar los valors.MySQL también soporta una sintaxis alternativa con dos números entre paréntesis a continación de la palabra clave FLOAT . El primer número representa el ancho a mostrar y el segundo número especifica el número de dígitos a almacenar a continuación del punto decimal ( como con DECIMAL y NUMERIC). Cuando se pide a MySQL que almacene un número para tales columnas con más dígitos decimales a continuación del punto decimal del especificado para la columna, el valor se redondea para elminar los dígitos extras cuando se almacena el valor.

En SQL estándar, los tipos REAL y DOUBLE PRECISION no aceptan especificaciones de precisión. MySQL soporta una sintaxis alternativa con dos números dados entre paréntesis a continuación del nombre del tipo. El primer número representa el ancho a mostrar y el segundo número especifica el número de dígitos a almacenar y mostrar a continuación del punto decimal. Como una extensión al estándar SQL, MySQL reconoce DOUBLE como sinónimo del tipo DOUBLE PRECISION . En contraste con el requerimiento estándar que la precisión para REAL sea menor que la usada para DOUBLE PRECISION, MySQL implementa ambas como valores de punto flotante de doble precisión con tamaño de ocho bytes (a no ser que el modo SQL del servidor incluya la opción REAL_AS_FLOAT ).

Para portabilidad máxima, el código que requiera almacenamiento de datos numéricos aproximados debe usar FLOAT o DOUBLE PRECISION sin especificar la precisión ni el número de dígitos decimales.

Los tipos DECIMAL y NUMERIC se implementan como el mismo tipo en MySQL. Se usan para guardar valores para los que es importante preservar una precisión exacta, por ejemplo con datos monetarios. Cuando se declara una columna de alguno de estos tipos, la precisión y la escala puede especificarse (y usualmente se hace), por ejemplo:

Código SQL:
Ver original
  1. salary DECIMAL(5,2)
En este ejemplo, 5 es la precisión y 2 es la escala. La precisión representa el número de dígitos decimales significativos que se almacenan para los valores, y la escala representa el número de dígitos que pueden almacenarse a continuación del punto decimal.

Desde MySQL 5.0.3, los valores DECIMAL y NUMERIC se almacenan en formato binario. Antes de 5.0.3, MySQL almacena los valores DECIMAL y NUMERIC como cadenas de caracteres, en lugar de binario. .Un carácter se usa para cada dígito del valor, el punto decimal (si la escala es mayor que 0), y el signo '-' (para números negativos). Si la escala es 0, los valores DECIMAL y NUMERIC no contienen punto decimal o parte fraccional.

SQL estándar requiere que la columna salary sea capaz de almacenar cualquier valor con cinco dígitos y dos decimales. En este caso, por lo tanto, el rango de valores que puede almacenarse en la columna salary es desde -999.99 a 999.99. MySQL fuerza este límite desde MySQL 5.0.3. Antes de 5.0.3, MySQL 5.0 variaba este límite de forma que, en el límite positivo del rango, la columna podía almacenar números hasta 9999.99. (Para números positivos, MySQL 5.0.2 y anteriores usaba el byte reservado para el signo para extender el límite superior del rango.)

En SQL estándar, la sintaxis DECIMAL(M) es equivalente a DECIMAL(M,0). Similarmente, la sintaxis DECIMAL es equivalente a DECIMAL(M,0), donde la implementación se permite para decidir el valor de M. Ambas formas de los tipos DECIMAL y NUMERIC se soportan en MySQL 5.0. El valor por defecto de M es 10.

El máximo rango de los valores DECIMAL y NUMERIC es el mismo para DOUBLE, pero el rango real para un valor dado en una columna DECIMAL o NUMERIC puede restringirse con la precisión o escala para una columna dada. Cuando en tal columna se asigna un valor con más dígitos siguiendo el punto decimal de los permitidos por la escala específica, el valor se convierte a tal escala. (El comportamiento preciso depende del sistema operativo, pero generalmente el efecto es que se trunca al número de dígitos permitidos.)
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 01/03/2012, 11:32
 
Fecha de Ingreso: septiembre-2010
Mensajes: 53
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Valor Maximo y Minimo Decimal

Perfecto muchas gracias Gonzalo =)

Etiquetas: decimal, maximo, sql, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:42.