指定された桁で数値を切り捨てるスカラ数値関数。
Synopsis
{fn TRUNCATE(numeric-expr,integer-expr)}
-
-
integer-expr が 0 の場合、数値は整数に切り捨てられます。つまり、切り捨ては小数点右側の 0 桁目で実行され、小数点以下と小数点そのものが切り捨てられます。
-
-
-
TRUNCATE は { } 括弧構文による ODBC スカラ関数としてのみ使用できます。
SELECT DISTINCT {fn TRUNCATE(654.321,2)} AS Trunc
FROM Sample.Person
SET x=2
&sql(SELECT {fn TRUNCATE(654.321,:x)}
INTO :a
FROM Sample.Person)
IF SQLCODE'=0 {
WRITE !,"Error code ",SQLCODE }
ELSE {
WRITE !,"truncated value is:",a }
両方の例とも、654.32 を返します (小数第 2 位で切り捨て)。
SELECT DISTINCT {fn TRUNCATE(654.32100,9)} AS Trunc
FROM Sample.Person
これは 654.321 を返します (切り捨て処理の前に末尾のゼロが削除されます。切り捨てやゼロの埋め込みは発生しません)。
SELECT DISTINCT {fn TRUNCATE(654.321,0)} AS Trunc
FROM Sample.Person
これは 654 を返します (小数点以下すべてと小数点が切り捨てられます)。
SELECT DISTINCT {fn TRUNCATE(654.321,-2)} AS Trunc
FROM Sample.Person
これは 600 を返します (整数桁が 2 桁切り捨てられ、0 で置き換わります。丸めは実行されません)。
SELECT DISTINCT {fn TRUNCATE(654.321,-3)} AS Trunc
FROM Sample.Person