Ho una tabella con 3 colonne:Formato doppia precisione in PostgreSQL
customer_name varchar
,account_type varchar
,current_balance double precision
Valori di esempio per current_balance:
1200 1500.5 1500
voglio loro di visualizzare in questo modo:
1200.00 1500.50 1500.00
Ho provato la seguente domanda:
SELECT to_char(current_balance,'9999999999999999D99')
FROM bank;
Formatta nel modo desiderato ma aggiunge uno spazio all'inizio. Come risolvere questo? C'è un modo migliore per formattare?
Fermati proprio dove ti trovi. Con attenzione [leggi la sezione su come vengono trattati i doppi in Postgres] (http://www.postgresql.org/docs/8.4/interactive/datatype-numeric.html#DATATYPE-FLOAT). I doppi sono trattati come valori in virgola mobile. I galleggianti sono memorizzati e calcolati in modo tale da poter perdere precisione. Non utilizzare un valore in virgola mobile per memorizzare un valore monetario. Usa i tipi 'NUMERIC' o' DECIMAL'. – Charles