MariaDB a le FORMAT()
fonction, qui formate un nombre en fonction de la chaîne de format donnée.
Il renvoie le nombre sous forme de chaîne formatée, avec des milliers et des séparateurs décimaux à la position appropriée et arrondit le résultat à la position décimale spécifiée.
Vous pouvez éventuellement spécifier une valeur locale pour formater les nombres selon le modèle approprié pour la région donnée.
Exemple
Voici un exemple pour illustrer :
SELECT FORMAT(123456.789, 2);
Résultat :
123,456.79
Dans ce cas, j'ai spécifié 2
pour le deuxième argument, et donc le nombre a été arrondi à deux décimales.
De plus, une virgule a été insérée pour le séparateur des milliers et un point/point a été utilisé pour le séparateur décimal.
Voici un autre exemple qui utilise des valeurs différentes pour le deuxième argument :
SELECT
FORMAT(123456.789, 0) AS "1",
FORMAT(123456.789, 4) AS "2",
FORMAT(123456.789, 6) AS "3";
Résultat :
+---------+--------------+----------------+ | 1 | 2 | 3 | +---------+--------------+----------------+ | 123,457 | 123,456.7890 | 123,456.789000 | +---------+--------------+----------------+
Spécifiez un paramètre régional
Voici quelques exemples de spécification des paramètres régionaux :
SELECT
FORMAT(123456.789, 2, 'ta_IN') AS "Tamil, India",
FORMAT(123456.789, 2, 'de_DE') AS "German, Germany",
FORMAT(123456.789, 2, 'zh_HK') AS "Chinese, Hong Kong";
Résultat :
+--------------+-----------------+--------------------+ | Tamil, India | German, Germany | Chinese, Hong Kong | +--------------+-----------------+--------------------+ | 1,23,456.79 | 123.456,79 | 123,456.79 | +--------------+-----------------+--------------------+
Voir Comment afficher tous les paramètres régionaux dans MariaDB pour obtenir une liste des paramètres régionaux pouvant être spécifiés avec cette fonction.
Formatage en devise
Le FORMAT()
La fonction ne fournit pas les moyens de formater le nombre en tant que devise. Cependant, vous pouvez utiliser le CONCAT()
fonction pour concaténer les résultats avec le symbole monétaire de votre choix :
SELECT CONCAT('$', FORMAT(8790.2398, 2));
Résultat :
$8,790.24
Cela nécessite évidemment que vous spécifiiez le symbole monétaire correct pour les paramètres régionaux utilisés.