Maison > base de données > tutoriel mysql > Comment arrondir des valeurs numériques à deux décimales en SQL ?

Comment arrondir des valeurs numériques à deux décimales en SQL ?

DDD
Libérer: 2025-01-07 13:22:42
original
472 Les gens l'ont consulté

How to Round Numerical Values to Two Decimal Places in SQL?

Arrondir les valeurs numériques à deux décimales dans SQL

Arrondir les valeurs numériques à des décimales spécifiques est souvent nécessaire lors de l'affichage des données de manière cohérente et de manière précise. En SQL, cette tâche peut être accomplie à l'aide de diverses fonctions et techniques.

Exemple de scénario

Considérons la tâche de convertir des minutes en heures, arrondies à deux décimales, tandis que en veillant à ce que seuls deux chiffres soient affichés après la virgule décimale. Par exemple, convertir 650 minutes en heures devrait donner 10,83. Cependant, en utilisant la requête SQL suivante :

Select round(Minutes/60.0,2) from ....
Copier après la connexion

donne un résultat de 10,5000000 pour 630 minutes. L'objectif est plutôt d'obtenir une valeur arrondie de 10,50.

Solution

Pour obtenir l'arrondi souhaité avec un contrôle précis du point décimal, vous pouvez utiliser la technique suivante :

select
    round(630/60.0,2),
    cast(round(630/60.0,2) as numeric(36,2))
Copier après la connexion

La fonction round() à elle seule ne permet pas de contrôler le nombre de décimales affichées. Cependant, en convertissant la valeur arrondie en un type numérique avec une précision appropriée (par exemple, numeric(36,2)), vous pouvez limiter la sortie à deux décimales.

Explication

  • La fonction round() arrondit l'expression 630/60.0 à deux décimales, ce qui donne 10,500000.
  • La fonction cast() convertit la valeur arrondie en un type de données numérique avec une précision de 36 et une échelle de 2. Cela limite la sortie à deux décimales, tronquant tous les chiffres supplémentaires.

Résultat attendu

Exécution de la version révisée La requête SQL renvoie les résultats suivants pour les exemples donnés :

10.500000    10.50
Copier après la connexion

Cela arrondit avec précision la valeur à deux décimales, affichant seulement 10,50 dans la deuxième colonne.

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!

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal