SIGN 函数返回expr表示的数值的符号,包括 1、-1、0。
expr 的值须为数值型,或可以转换为 NUMBER 类型的字符型(转换失败返回 Invalid number 错误)。对于其他类型,函数返回类型不支持。
当 expr 的值为 NULL 时,函数返回 NULL。
当 expr 的值为正数时,函数返回 1;当 expr 的值为负数时,函数返回-1;当 expr 的值为 0 时,函数返回 0。
对于浮点数据里的 Nan、-Inf、Inf 特殊值:
SIGN(Nan) = 1
SIGN(Inf) = 1
SIGN(-Inf) = -1
示例
DROP TABLE IF EXISTS number_fd;
CREATE TABLE number_fd(numberf FLOAT, numberd DOUBLE);
INSERT INTO number_fd VALUES('NaN','inf');
INSERT INTO number_fd VALUES('',5.5333333323);
INSERT INTO number_fd VALUES('-inf','-4.322323');
COMMIT;
SELECT SIGN(numberf) sign1, SIGN(numberd) sign2 FROM number_fd;
SIGN1 SIGN2
----------- -----------
1 1
1
-1 -1
复制代码
评论