Formatage de devises dans MySQL : sélection d'entiers comme devise
MySQL propose plusieurs options pour convertir des valeurs entières au format monétaire lors de la récupération des données. Voici les approches les plus courantes :
1. CONCAT() avec FORMAT()
La fonction FORMAT() vous permet d'appliquer des modèles de formatage aux nombres. Pour le formatage de la devise, vous pouvez utiliser le modèle suivant :
FORMAT(number, decimal_places)
Pour convertir un entier au format monétaire, vous pouvez utiliser la requête suivante :
SELECT CONCAT('$', FORMAT(val, 2)) AS formatted_currency ... ;
Cela renverra la valeur entière formaté comme une valeur monétaire avec deux décimales.
2. Remplacement de chaîne
Une autre option consiste à utiliser le remplacement de chaîne pour insérer des virgules dans une chaîne numérique. Cette approche implique de créer une fonction personnalisée ou d'utiliser une fonction intégrée telle que SUBSTRING_INDEX() :
CREATE FUNCTION format_currency(number INT) RETURNS VARCHAR(255) BEGIN DECLARE formatted_number VARCHAR(255); SET formatted_number = REPEAT('0', FLOOR(LOG10(number)) + 1); WHILE number > 0 DO SET formatted_number = SUBSTRING_INDEX(formatted_number, '0', -3); SET formatted_number = CONCAT(formatted_number, ','); SET formatted_number = CONCAT(formatted_number, SUBSTRING(CAST(number AS CHAR), -2)); SET number = number / 100; END WHILE; SET formatted_number = SUBSTRING(formatted_number, 1, LENGTH(formatted_number) - 1); SET formatted_number = CONCAT('$', formatted_number); RETURN formatted_number; END;
Vous pouvez ensuite utiliser la fonction format_currency() pour formater vos valeurs entières en tant que devise :
SELECT format_currency(val) AS formatted_currency ... ;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!