ホームページ > データベース > mysql チュートリアル > SQLで数値を小数点第2位に四捨五入するにはどうすればよいですか?

SQLで数値を小数点第2位に四捨五入するにはどうすればよいですか?

DDD
リリース: 2025-01-07 13:22:42
オリジナル
381 人が閲覧しました

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

SQL での数値の小数点以下 2 桁への四捨五入

データを一貫した形式で表示する場合、数値を特定の小数点以下 2 桁に四捨五入することが必要になることがよくあります。そして正確なやり方。 SQL では、このタスクはさまざまな関数と手法を使用して実行できます。

シナリオ例

分を小数点第 2 位に四捨五入して時間に変換するタスクを考えてみましょう。小数点以下 2 桁のみが表示されるようにします。たとえば、650 分を時間に変換すると、10.83 になります。ただし、次の SQL クエリを使用すると、

Select round(Minutes/60.0,2) from ....
ログイン後にコピー

の結果は 630 分間で 10.5000000 になります。目標は、代わりに丸められた値 10.50 を取得することです。

解決策

正確な小数点制御を使用して目的の丸めを実現するには、次の手法を使用できます。

select
    round(630/60.0,2),
    cast(round(630/60.0,2) as numeric(36,2))
ログイン後にコピー

round() 関数だけでは、表示される小数点以下の桁数を制御できません。ただし、丸められた値を適切な精度の数値型 (numeric(36,2) など) にキャストすることで、出力を小数点以下 2 桁に制限できます。

説明

  • round() 関数は、式 630/60.0 を小数点第 2 位に丸め、結果は次のようになります。 10.500000.
  • cast() 関数は、丸められた値を精度 36、位取り 2 の数値データ型に変換します。これにより、出力が小数点以下 2 桁に制限され、追加の桁は切り捨てられます。

予想出力

修正された SQL クエリを実行すると、指定された例に対して次の結果が返されます。

10.500000    10.50
ログイン後にコピー

これにより、値が小数点以下 2 桁に正確に四捨五入され、2 列目に 10.50 のみが表示されます。 .

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート