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

tamaño en byte de tipo de datos decimal

Estas en el tema de tamaño en byte de tipo de datos decimal en el foro de PostgreSQL en Foros del Web. Tengo que definir un tipo de datos que guarda saldos y tengo que usar el tipo de datos numerico pero no se que precision usar ...
  #1 (permalink)  
Antiguo 20/04/2009, 14:15
 
Fecha de Ingreso: abril-2009
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
tamaño en byte de tipo de datos decimal

Tengo que definir un tipo de datos que guarda saldos y tengo que usar el tipo de datos numerico pero no se que precision usar porque no se cuantos bytes es que ocupa el tipo de datos numerico en disco. Se que es variant pero debe tener una forma de calcular segun la precision. He encontrado bibliografia sobre esto y dice que es presicion entre 2 numero de bytes mas 11 bytes adicionales por favor alguien puede ayudarme.
  #2 (permalink)  
Antiguo 20/04/2009, 14:20
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: tamaño en byte de tipo de datos decimal

Mira este post:

http://www.forosdelweb.com/f99/tipo-...n-coma-690366/

y este link:

http://www.postgresql.org/docs/8.2/s...e-numeric.html

Todo depende de tus necesidades.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 21/04/2009, 08:48
 
Fecha de Ingreso: abril-2009
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: tamaño en byte de tipo de datos decimal

Gracias por responder mi duda pero lo que quiero saber es el tamaño en byte para decidir que precision le doy a mis campos tipo numerico. si le doy mucha precision entonces aumenta considerablemente el tamaño de la base de dato y consiguo la lentitud en los calculos. quiero saber el tamaño optimo que le doy al campo.
  #4 (permalink)  
Antiguo 21/04/2009, 08:51
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: tamaño en byte de tipo de datos decimal

Existen:
float 4bytes con precisión de 6 decimales.
numeric variable Sin limite con los decimales que requieras.
Decimal Sin limite con los decimales que requieras.
bouble precision 8 bytes con precisión de 15 decimales.

La pregunta es:
Los saldos que precision requieren?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 21/04/2009, 09:15
 
Fecha de Ingreso: abril-2009
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: tamaño en byte de tipo de datos decimal

los saldos pueden ser Numeric(10,2) o pueden ser Numeric(19,2) en el segundo caso puedo aceptar numero mas grandes que quizas en algun momento me hagan falta pero si me consumen el doble de tamaño en disco para si en algun momento me haga falta mejor no lo declaro asi.
  #6 (permalink)  
Antiguo 21/04/2009, 09:42
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: tamaño en byte de tipo de datos decimal

Si en algún momento requieres de datos decimal(19,2) rte tocaría declarar el campo con esa longitud, lo que llevaría un desperdicio en la tabla si la mayoría de datos son inferiores a ese tamaño.

Sin embargo, renehd no se la complejidad que maneje tu sistema y si vale la pena hacer tanto énfasis en el espacio y rendimiento del tipo de dato.
Yo trabajo con la simulación de un modelo matemático y créeme que tengo muchísimos datos que requieren de mucha precisión. Todos los manejo como double precision con 15 decimales de precisión (8 bytes). Nunca he tenido problemas de rendimiento ni espacio.

Para que se noten estas diferencias, tendrías que tener una base de datos muy pero muy grande.

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
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 16:23.