ホームページ >データベース >mysql チュートリアル >SQL Server で小数点以下の桁を四捨五入せずに切り捨てるにはどうすればよいですか?

SQL Server で小数点以下の桁を四捨五入せずに切り捨てるにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-15 08:54:43584ブラウズ

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

SQL Server での小数点以下の桁の削除: 切り捨てアプローチ

SQL Server では、10 進数データの操作が必要になることが多く、場合によっては、四捨五入によって値を変更せずに末尾の小数点以下の桁を削除する必要があります。 ROUND 関数の丸め動作とは異なり、シナリオではデータの整合性のために純粋な切り捨てが必要です。

次の例を考えてみましょう:

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

SQL Server は本質的に @value を 123.46 に丸めます。 代わりに切り詰めるには、特定の 3 番目のパラメータを指定して ROUND 関数を利用します:

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

重要な 3 番目のパラメーター (1) は、丸めではなく切り捨てを指示します。 結果は 123.45 となり、余分な 10 進数が実質的に削除されます。

関数の構文

ROUND 関数の切り捨ての構文は次のとおりです。

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

パラメータ:

  • numeric_expression: 切り捨てる 10 進数値。
  • length: 保持する必要のある小数点以下の桁数。
  • 関数: 演算タイプ (丸めの場合は 0、切り捨ての場合はゼロ以外の値)。

ROUND を切り捨てパラメーターとともに使用すると、四捨五入による不正確さを生じさせることなく SQL Server で小数点以下の桁を削除する正確な方法が提供され、アプリケーションでのデータの正確性が確保されます。

以上がSQL Server で小数点以下の桁を四捨五入せずに切り捨てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。