Top > XT_PACKAGE > ROUNDUP

ROUNDUP ファンクション(切り上げ)

切り上げ ( ROUNDUP )

書式
ROUNDUP( number [,integer] )

number を小数点以下 integer 桁で切り上げた値を戻す。
引数 integer が負の場合は小数点の左桁が切り上げられる。(整数部)

number の切り上げた整数を戻す。

ROUNDUP( 9.4)    ⇒   9
ROUNDUP(-9.4)    ⇒ -10
ROUNDUP( 11, -1) ⇒  20

切り捨てを行なう場合には TRUNC 関数 を使用する。

ROUNDUP 単体ファンクション版

CREATE OR REPLACE FUNCTION ROUNDUP(P_NUM IN NUMBER, P_PLACE IN INTEGER := 0)
RETURN NUMBER
IS
	vBase NUMBER;
BEGIN
	IF (P_NUM = 0) THEN
		RETURN 0;
	END IF;
	vBase := 10 ** P_PLACE ; -- POWER(10,P_PLACE)
	RETURN CEIL(ABS(P_NUM) * vBase) / vBase * SIGN(P_NUM);
--	RETURN CEIL(P_NUM * vBase) / vBase;
END;
/

負の場合の切り上げは、表計算ソフトを参考にしている。
目的に合っていない場合はコメントを入れ替えてください。(CEIL 関数 は天井関数で「切り上げ」関数 ではありません)
引数が NULL の場合でも NULL 以外の 38 桁の数値 とほぼ同じコストで NULL を戻す仕様で作成しています。 NULL のときだけに動作を早くすることを冗長と考えているためです。

パッケージ版

対象ファイル名漢字コード
プロシージャファイルfilext_math.sqlShift JIS

SQL 文による 切り上げ 計算

数値 1.25 の小数点第一位以下に切り上げる例

SELECT
       CEIL(ABS(1.25) * POWER(10,1)) / POWER(10,1) * SIGN(1.25) 
FROM DUAL;
 


SQL 関数 - ROUNDUP 関連

 
アルファベット別 関数一覧 ショートカット
ABCDEFG
HILMNOP
RSTUVWX
日本オラクル
■ 日本オラクル 株式会社
■ オラクルマスター資格 (オラクルマスターとは
■ オラクルサポートセンター