8

値を FLOATS として保存したいのですが、値を取得するときに、ユーザーは小数点以下の桁数を指定 (および実行時に変更) できます。

どういうわけかそれを渡すことができますSELECTか、それともアプリケーションでそれを行う必要がありますか?

4

2 に答える 2

15

はい、2 番目のパラメータを指定するだけですROUND()

SELECT ROUND(23.298, <precision>);

これにより、返される桁数を指定できます。(負の値を指定することもできます。この場合、入力は 10 (-precision)に丸められます)。

CASTまたは、次のように使用できますDECIMAL

 CAST(2.5 AS DECIMAL(20,2))

(注: この後者は のようなテキスト入力でも機能しますCAST('2.5' AS DECIMAL(20,2))が、この場合は FLOAT 入力に関するものです)

于 2012-11-29T07:33:03.797 に答える
4

を使用ROUND()するCEIL()FLOOR()、同じことを行い、ユーザーから渡された 2 番目の引数の値を入力として取得します。

于 2012-11-29T07:34:24.587 に答える