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

To_char

Estas en el tema de To_char en el foro de PostgreSQL en Foros del Web. Hola a todos, quiero formatear cualquier número con un formato que me agrupe los miles y los decimales. He intentado esto to_char(numero,99G990D00) pero solamente funciona ...
  #1 (permalink)  
Antiguo 26/11/2010, 07:18
 
Fecha de Ingreso: noviembre-2010
Mensajes: 7
Antigüedad: 14 años
Puntos: 1
Pregunta To_char

Hola a todos,
quiero formatear cualquier número con un formato que me agrupe los miles y los decimales.

He intentado esto
to_char(numero,99G990D00)
pero solamente funciona cuando los numeros no son demasiados grandes.
Cuando son mas grandes se me muestra ######.

¿Alguna idea?

Gracias de antemano.
  #2 (permalink)  
Antiguo 26/11/2010, 07: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: To_char

Pon unos 5 ejemplos de numeros pequeños y grandes y te ayudo a buscar el formato que mejor se acomode a tuus necesidades.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 26/11/2010, 08:32
 
Fecha de Ingreso: noviembre-2010
Mensajes: 7
Antigüedad: 14 años
Puntos: 1
Respuesta: To_char

Hola Huesos,
estas dos querys me generan los resultados de abajo.
Poner esto 99G999G990D00 me parece demasiado ... por que si el numero sigue creciendo eso tb debe seguir creciendo en access por ejemplo con una expresion da igual el tamaño del numero que siempre te lo formatea.

SELECT to_char(Compras.Compra,'99G999G990D00') AS Compra FROM Compras
SELECT Compras.Compra as Compra FROM Compras



0
0
126.29
20206.18
757731.6
4.04
252.58
0
7.76
0
1000045000000


0,00
0,00
126,29
20.206,18
757.731,60
4,04
252,58
0,00
7,76
0,00
##.###.###,## (lo que me muestra cuando el numero es muy grande)
  #4 (permalink)  
Antiguo 26/11/2010, 08:39
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: To_char

Utiliza un formato mas grande.

999G999G999G999G990D00

y si hay posibilidades de numeros mas grandes, añadele mas nueves y Gs.

Código SQL:
Ver original
  1. postgres=> SELECT TO_CHAR(1000045000000,'999G999G999G990D00');
  2.        to_char
  3. ---------------------
  4.   ###,###,###,###.##
  5. (1 fila)
  6.  
  7. postgres=> SELECT TO_CHAR(1000045000000,'999G999G999G999G990D00');
  8.          to_char
  9. -------------------------
  10.     1,000,045,000,000.00
  11. (1 fila)


de igual forma, si tienes numeros pequeños, esto no afecta.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: Ninguno
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 12:09.