Maison >base de données >tutoriel mysql >Comment puis-je tronquer, et non arrondir, les décimales dans SQL Server ?

Comment puis-je tronquer, et non arrondir, les décimales dans SQL Server ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-15 08:54:43552parcourir

How Can I Truncate, Not Round, Decimal Places in SQL Server?

Suppression des décimales dans SQL Server : une approche de troncature

SQL Server nécessite souvent de manipuler des données décimales, nécessitant parfois la suppression des décimales finales sans modifier la valeur par arrondi. Contrairement au comportement d'arrondi de la fonction ROUND, les scénarios exigent une troncature pure pour l'intégrité des données.

Considérez cet exemple :

<code class="language-sql">DECLARE @value DECIMAL(18,2);
SET @value = 123.456;</code>

SQL Server arrondit intrinsèquement @value à 123,46. Pour tronquer à la place, exploitez la fonction ROUND avec un troisième paramètre spécifique :

<code class="language-sql">ROUND(123.456, 2, 1);</code>

Le troisième paramètre crucial (1) dirige la troncature et non l'arrondi. Le résultat est 123,45, supprimant ainsi le chiffre décimal supplémentaire.

Syntaxe des fonctions

La syntaxe de la fonction ROUND pour la troncature est :

<code class="language-sql">ROUND(numeric_expression, length, function)</code>

Paramètres :

  • numeric_expression : La valeur décimale à tronquer.
  • longueur : Le nombre de décimales souhaité à conserver.
  • fonction : Le type d'opération (0 pour l'arrondi, toute valeur non nulle pour la troncature).

L'emploi de ROUND avec le paramètre de troncature fournit une méthode précise pour supprimer les décimales dans SQL Server sans les inexactitudes introduites par l'arrondi, garantissant ainsi l'exactitude des données dans les applications.

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:
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