Oracle: modèle pour to_char (nombre) pour ajouter des caractères ascii supplémentaires?
-
06-09-2019 - |
Question
Utilisation de la fonction Oracle to_char (nombre), est-il possible d'ajouter des caractères ascii à la chaîne retournée?
Plus précisément, je dois ajouter un caractère de pourcentage à la chaîne retournée.
"sélectionnez to_char (89,2244, '999G999G999G999G990D00') de double" -> retourne « 89,22 ». Je besoin d'un modèle de format qui retourne « 89,22% ».
J'utilise ce moyen de rapports dans Application Express, ne peut donc pas simplement concaténer « % » à la requête, je dois le mettre dans le format numérique.
La solution
Vous ne pouvez pas envelopper le to_char avec un CONCAT?
select concat(to_char(89.2244, '999G999G999G999G990D00'),'%') from dual
Autres conseils
Vous ne pouvez pas le faire en plein format numérique.
Si vous êtes en mesure de changer NLS_CURRENCY
pour vous session, vous pouvez effectuer les opérations suivantes:
SELECT TO_CHAR(1.2, '999G999G999G999G990D00L' /*, 'NLS_CURRENCY=%' */)
FROM dual
---
1,20%
façon rapide et sale:
select to_char (89,2244, '999G999G999G999G990D00L', 'NLS_CURRENCY =' '%' '') du double;
SYS @ orant11g >select to_char(89.2244, '999G999G999G999G990D00')||'%' from dual;
TO_CHAR(89.2244,'999G999 ------------------------ 89.22%
Il suffit d'utiliser le || les barres au lieu de la fonction concat.