Oracle SIGN() 函数使用指南
Oracle SIGN()
是一个内置函数,它返回 -1
,0
, 或 1
表示给定的数字是负数,零还是正数。
Oracle SIGN()
语法
这里是 Oracle SIGN()
函数的语法:
SIGN(num)
参数
num
-
必需的。
返回值
Oracle SIGN()
函数返回 -1
,0
, 或 1
表示给定的数字是负数,零还是正数。该函数的实现规则如下:
-
对于
NUMBER
类型的值:- 如果
n
小于 0,符号是-1
- 如果
n
等于 0,符号是0
- 如果
n
大于 0,符号是1
- 如果
-
对于二进制浮点数(
BINARY_FLOAT
和BINARY_DOUBLE
),此函数返回数字的符号位。:- 如果
n
小于 0,符号是-1
- 如果
n
大于等于 0 或n
等于NaN
,符号是1
- 如果
如果任意一个参数为 NULL
, SIGN()
将返回 NULL
。
Oracle SIGN()
示例
这里有几个展示了 Oracle SIGN()
函数用法的示例。
基本用法
SELECT
SIGN(5),
SIGN(0),
SIGN(-5)
FROM dual;
输出:
SIGN(5) SIGN(0) SIGN(-5)
__________ __________ ___________
1 0 -1
NaN
对于 NaN 值,Oracle SIGN()
函数返回 1
。
SELECT
SIGN(BINARY_DOUBLE_NAN),
SIGN(BINARY_FLOAT_NAN)
FROM dual;
输出:
SIGN(BINARY_DOUBLE_NAN) SIGN(BINARY_FLOAT_NAN)
__________________________ _________________________
1 1
NULL 参数
如果任意一个参数为 NULL
, SIGN()
将返回 NULL
。
SET NULL 'NULL';
SELECT
SIGN(NULL)
FROM dual;
输出:
SIGN(NULL)
_____________
NULL
在本示例中,我们使用 SET NULL 'NULL';
语句将 NULL
值显示为 'NULL'
字符串。
结论
Oracle SIGN()
是一个内置函数,它返回 -1
,0
, 或 1
表示给定的数字是负数,零还是正数。