Maison > base de données > tutoriel mysql > Comment puis-je formater des entiers comme devise dans MySQL ?

Comment puis-je formater des entiers comme devise dans MySQL ?

Susan Sarandon
Libérer: 2024-11-27 15:33:10
original
171 Les gens l'ont consulté

How can I format integers as currency in MySQL?

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)
Copier après la connexion

Pour convertir un entier au format monétaire, vous pouvez utiliser la requête suivante :

SELECT CONCAT('$', FORMAT(val, 2)) AS formatted_currency ... ;
Copier après la connexion

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;
Copier après la connexion

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 ... ;
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal