Comment arrondir et tronquer les nombres décimaux en SQL

SQL propose diverses fonctions pour gérer les nombres décimaux. Cet article explique en détail comment arrondir, tronquer, et arrondir vers le haut, en présentant chaque fonction avec des exemples concrets.

Sommaire

Comment arrondir avec la fonction ROUND

La fonction ROUND en SQL arrondit un nombre à un nombre de décimales spécifié. La syntaxe de base de cette fonction est la suivante :

Syntaxe de base

ROUND(nombre, nombre_de_décimales)
  • nombre : Le nombre à arrondir.
  • nombre_de_décimales : Le nombre de décimales après l’arrondissement.

Exemple d’utilisation

Dans l’exemple suivant, le nombre 3.4567 est arrondi à deux décimales.

SELECT ROUND(3.4567, 2);  -- Résultat : 3.46

Il est également possible d’arrondir la partie entière en spécifiant une valeur négative.

SELECT ROUND(345.67, -1);  -- Résultat : 350

Ainsi, en utilisant la fonction ROUND, il est facile d’arrondir des nombres.

Comment tronquer avec la fonction TRUNCATE

La fonction TRUNCATE en SQL est utilisée pour tronquer un nombre à un nombre spécifié de décimales. La syntaxe de base de cette fonction est la suivante :

Syntaxe de base

TRUNCATE(nombre, nombre_de_décimales)
  • nombre : Le nombre à tronquer.
  • nombre_de_décimales : Le nombre de décimales après la troncature.

Exemple d’utilisation

Dans l’exemple suivant, le nombre 3.4567 est tronqué à deux décimales.

SELECT TRUNCATE(3.4567, 2);  -- Résultat : 3.45

Il est également possible de tronquer la partie entière en spécifiant une valeur négative.

SELECT TRUNCATE(345.67, -1);  -- Résultat : 340

En utilisant la fonction TRUNCATE, vous pouvez gérer les nombres à la précision souhaitée.

Comment tronquer avec la fonction FLOOR

La fonction FLOOR en SQL tronque un nombre au plus grand entier inférieur ou égal. La syntaxe de base de cette fonction est la suivante :

Syntaxe de base

FLOOR(nombre)
  • nombre : Le nombre à tronquer.

Exemple d’utilisation

Dans l’exemple suivant, le nombre 3.4567 est tronqué à la partie entière.

SELECT FLOOR(3.4567);  -- Résultat : 3

Il peut également être appliqué aux nombres négatifs.

SELECT FLOOR(-3.4567);  -- Résultat : -4

Avec la fonction FLOOR, vous pouvez obtenir uniquement la partie entière, ce qui est utile lorsque vous avez besoin de tronquer des nombres.

Comment arrondir vers le haut avec la fonction CEIL

La fonction CEIL (ou CEILING) en SQL arrondit un nombre au plus petit entier supérieur ou égal. La syntaxe de base de cette fonction est la suivante :

Syntaxe de base

CEIL(nombre)
  • nombre : Le nombre à arrondir vers le haut.

Exemple d’utilisation

Dans l’exemple suivant, le nombre 3.4567 est arrondi à la partie entière supérieure.

SELECT CEIL(3.4567);  -- Résultat : 4

Il peut également être appliqué aux nombres négatifs.

SELECT CEIL(-3.4567);  -- Résultat : -3

En utilisant la fonction CEIL, vous pouvez arrondir les nombres au prochain entier, ce qui est utile lorsque vous avez besoin d’un arrondi vers le haut.

Exemple d’application : Utilisation dans les données de transaction

Le traitement des décimales est crucial dans les données transactionnelles. Voici des exemples concrets d’utilisation des fonctions ROUND, TRUNCATE, FLOOR et CEIL sur des données de transaction.

Arrondissement des montants des transactions

Pour arrondir les montants des transactions, utilisez la fonction ROUND.

SELECT 
    transaction_ID, 
    ROUND(montant, 2) AS montant_arrondi
FROM 
    table_transactions;

Cette requête arrondit les montants des transactions à deux décimales.

Troncature des montants de taxes

Pour calculer les taxes et tronquer le résultat, utilisez la fonction TRUNCATE.

SELECT 
    transaction_ID, 
    TRUNCATE(taxe, 0) AS taxe_tronquée
FROM 
    table_transactions;

Cette requête tronque les montants des taxes à la partie entière.

Troncature des montants après réduction

Pour tronquer le montant après réduction à la partie entière, utilisez la fonction FLOOR.

SELECT 
    transaction_ID, 
    FLOOR(montant * taux_de_réduction) AS montant_après_réduction_tronqué
FROM 
    table_transactions;

Cette requête tronque le montant après réduction à la partie entière.

Arrondissement vers le haut des frais de port

Pour arrondir les frais de port à la partie entière supérieure, utilisez la fonction CEIL.

SELECT 
    transaction_ID, 
    CEIL(frais_de_port) AS frais_de_port_arrondis
FROM 
    table_transactions;

Cette requête arrondit les frais de port à la partie entière supérieure.

En utilisant ces fonctions, vous pouvez gérer efficacement le traitement des nombres dans les données transactionnelles.

Conclusion

En SQL, les fonctions ROUND, TRUNCATE, FLOOR, et CEIL sont utilisées pour arrondir, tronquer, et arrondir vers le haut les nombres décimaux. Chacune de ces fonctions peut être appliquée selon le contexte pour gérer avec précision les données numériques. Dans un cadre professionnel, utiliser ces fonctions permet de traiter avec précision les données transactionnelles et de garantir une gestion fiable des données.

Sommaire