Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment supprimer le zéro lorsque la partie entière est zéro dans Oracle

Lors de l'utilisation de TO_CHAR() fonction pour formater un nombre dans Oracle Database, vous pouvez utiliser le B élément de format pour renvoyer des blancs pour la partie entière d'un nombre à virgule fixe lorsque la partie entière est zéro.

Cela fonctionne indépendamment des zéros dans le modèle de format.

Exemples

Voici un exemple pour illustrer :

SELECT  
    TO_CHAR(0, '9'),
    TO_CHAR(0, 'B9')
FROM DUAL;

Résultat :

   TO_CHAR(0,'9')    TO_CHAR(0,'B9') 
_________________ __________________ 
 0                                  

En voici une avec un entier positif :

SELECT  
    TO_CHAR(1, '9'),
    TO_CHAR(1, 'B9')
FROM DUAL;

Résultat :

   TO_CHAR(1,'9')    TO_CHAR(1,'B9') 
_________________ __________________ 
 1                 1                

Et en voici un avec un zéro et un modèle de format qui spécifie une partie fractionnaire :

SELECT  
    TO_CHAR(0, '90D99'),
    TO_CHAR(0, 'B90D99')
FROM DUAL;

Résultat :

   TO_CHAR(0,'90D99')    TO_CHAR(0,'B90D99') 
_____________________ ______________________ 
  0.00                                      

Et avec un entier positif :

SELECT  
    TO_CHAR(1, '90D99'),
    TO_CHAR(1, 'B90D99')
FROM DUAL;

Résultat :

   TO_CHAR(1,'90D99')    TO_CHAR(1,'B90D99') 
_____________________ ______________________ 
  1.00                  1.00