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)中查出所有正的主要内容,如果未能解决你的问题,请参考以下文章

Python如何判断录入非数字?

excel如何判断字符串是数字还是非数字

判断输入的字符串是否为 纯数字 还是 纯字母

SQL查询中,如何判断一个字符串字段的内容的长度

c语言中如何判断输入的是不是数字?

Oracle中判断字段是否为数字