176

元の数値を四捨五入せずに、小数点以下2桁の数値を出力するにはどうすればよいですか。

例えば:

2229,999 -> 2229,99

私はすでに試しました:

FORMAT(2229.999, 2)
CONVERT(2229.999, DECIMAL(4,2))
4

6 に答える 6

396

number を小数点以下 2 桁にフォーマットする場合、2 つのオプションTRUNCATEROUND. あなたは機能を探していTRUNCATEます。

例:

丸めなし:

TRUNCATE(0.166, 2)
-- will be evaluated to 0.16

TRUNCATE(0.164, 2)
-- will be evaluated to 0.16

ドキュメント: http://www.w3resource.com/mysql/mathematical-functions/mysql-truncate-function.php

丸めあり:

ROUND(0.166, 2)
-- will be evaluated to 0.17

ROUND(0.164, 2)
-- will be evaluated to 0.16

ドキュメント: http://www.w3resource.com/mysql/mathematical-functions/mysql-round-function.php

于 2013-05-02T20:31:32.033 に答える
2

これは私がこれを使用した方法であり、例として次のとおりです。

CAST(vAvgMaterialUnitCost.`avgUnitCost` AS DECIMAL(11,2)) * woMaterials.`qtyUsed` AS materialCost
于 2017-12-17T20:25:27.690 に答える