8
votes

Format Double précision dans PostgreSQL

J'ai une table avec 3 colonnes: xxx pré>

Exemple de valeurs pour courant_balance: p> xxx pré>

Je veux qu'ils affichent comme ceci: P>

SELECT to_char(current_balance,'9999999999999999D99')
  FROM bank;


3 Réponses :


3
votes
>>> import psycopg2
>>> conn = psycopg2.connect(host='localhost', database='scratch', user='',password='')
>>> c = conn.cursor()

>>> c.execute("select to_char(dbl, '9999999999999999D99') from practice where id = 1;")
>>> c.fetchall() # with padding
[('            12345.68',)]

>>> c.execute("select to_char(dbl, 'FM9999999999999999D99') from practice where id = 1;")
>>> c.fetchall() # no padding
[('12345.68',)]

>>> c.execute("select to_char(dbl, 'FML9999999999999999D99') from practice where id = 1;")
>>> c.fetchall() # with locale-specific currency symbol
[('$12345.68',)]

0 commentaires

8
votes

3 commentaires

Salut Charles .. Si mon enregistrement d'entrée est 0 (zéro) à ce moment-là qu'il donne .00 seulement. Mais je veux 0.00 Comment puis-je faire ça ..?


Je ne sais pas, en fait. J'apprends toujours tous les outs de Postgres. Si tout le reste échoue, vous pouvez essayer un cas que vérifiez si le nombre est zéro et renvoie '0.00' si oui.


Tard à la fête, mais quelqu'un devrait probablement mentionner "99 ... 0d99 "comme solution possible à la condition de 0,00.