Ver Mensaje Individual
  #5 (permalink)  
Antiguo 04/06/2010, 05:13
Avatar de gnzsoloyo
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, 5 meses
Puntos: 2658
Respuesta: ordenar campo precio varchar

El manual de MySQL recomienda usar DECIMAL para los casos de valores con decimales que requieran precisión, como es el caso de valores monetarios.
En ese caso lo que tienes que determinar es la cantidad de dígitos enteros y decimales que usarás, ya que el DECIMAL requiere indicar la longitud del valor mayor (incluyendo el punto o coma decimal) y la cantidad de decimales a usar.
Así, DECIMAL(l, d), indicado como
Código MySQL:
Ver original
  1. DECIMAL(12,2)
significa que el mayor entero posible será 999999999, y el rango máximo será de -999999999.99 a 999999999.99.
Si cuentas los "9", verás que hay sólo 11, mientras que estoy indicando 12 como longitud de campo. Eso es porque un byte se usa para indicar la posición del punto decimal.

Respecto a la representación de los valores en pantalla, eso depende del lenguaje usado. En VB.Net, por ejemplo, eso se puede realizar por medio de objetos Globalization.CultureInfo, dos de cuyas propiedades permiten indicar qué separador decimal y de miles se usarán.

Fíjate en el método indicado en el manual de referencia en tu lenguaje de programación.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)