2017-08-31 1 views
2

Je cherche à mettre en forme un flotteur de sorte qu'il sera affiché de la manière suivante:postgresql to_char un entier avec le format allemand

999.999.990,00 

J'utilise actuellement la fonction to_char:

to_char(SUM(amount::float)/100, '999G999G990D00')

Toutefois, ce format affiche des virgules au lieu de points. Telle est la norme en Allemagne.

Quand j'ai changé le G (utilisé pour symboliser une virgule) à un D (utilisé pour symboliser un point) je reçois l'erreur suivante:

psycopg2.ProgrammingError: multiple decimal points

Je suis en cours d'exécution et PostgreSQL psycopg2 avec Python 2.7.

Des idées comment je peux accomplir ce remplacement?

Merci

Répondre

3

Vous pouvez essayer ce qui suit

TO_CHAR(SUM(amount::float)/100,'FM99G999G990D00L') 

Il devrait vous donner les résultats suivants

55.123.854.547,10 
3.123,58 
-1.257.487,90