Bonjour,

Je dois formater une colonne de montants monétaires de format NUMBER(12.3) en supprimant la virgule.

Avec TRUNC et l'aide de la FAQ, j'ai trouvé partiellement ce dont j'ai besoin mais le problème est que les nombres sont enregistrés parfois sans décimale : 100 au lieu de 100.000. Du moins c'est comme ça qu'ils s'affichent dans Sql Developer.

Du coup avec ma formule actuelle :
- 100.123 devient bien 100123
- 100.12 devient bien 100120
- 100.1 devient bien 100100
- mais 100 devient 1000 au lieu de 10000

Ma formule de test actuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT TO_CHAR(TRUNC(100.123, 0)) || TO_CHAR((100.123 - TRUNC(100.123, 0)) * 1000) FROM DUAL;
Remplacez 100.123 par 100 dans la formule si vous voulez tester.