oracle 中如何创建一个函数用来判断输入的数字正负零,并且在一个名为count表(num1 number)中查出所有正
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 中如何创建一个函数用来判断输入的数字正负零,并且在一个名为count表(num1 number)中查出所有正相关的知识,希望对你有一定的参考价值。
我是想重写那个方法。。。
也不用创建啊,有个函数叫sign用法:
select sign(数值) from dual
大于0返回1,等于0返回0,小于0返回-1
你说的那个
select * from count where sign(num1)=1
得出来的就是为正数的了
---补充--
create or replace FUNCTION NUM(v_num number)
return int is
Result int;
begin
if(v_num < 0) then
Result := -1;
end if;
if(v_num = 0) then
Result := 0;
end if;
if(v_num > 0) then
Result := 1;
end if;
return(Result);
end num;
用法与sign一致
如select num(100) from dual; 参考技术A 一、oracle 中专门有一个函数来判断的——sign函数,用法:sign(a),如果a是负数则返回-1;如果是0,返回0;如果是正数,返回1。
二、执行:select * from count a where sign(a.num1) = 1;语句,所查结果即count表中所有num1字段为正的信息。 参考技术B Oracle 自带的函数 SIGN
表达式的正 (+1)、零 (0) 或负 (-1) 号
SQL> SELECT SIGN(-47.3), SIGN(0), SIGN(47.3) FROM dual;
SIGN(-47.3) SIGN(0) SIGN(47.3)
----------- ---------- ----------
-1 0 1 参考技术C 不用创建函数
CASE WHEN digit > 0 THEN '+'
WHEN digit = 0 THEN '0'
ELSE '-' END
SELECT number from num1 WHERE num1 > 0本回答被提问者和网友采纳
以上是关于oracle 中如何创建一个函数用来判断输入的数字正负零,并且在一个名为count表(num1 number)中查出所有正的主要内容,如果未能解决你的问题,请参考以下文章