我有以下代码,如果我的值无效,它将返回一条错误消息。如果给定的值不是数字,我想给出相同的错误信息。如何判断Oracle中的值是否不是数值?
IF(option_id = 0021) THEN
IF((value<10000) or (value>7200000) or /* Numeric Check */)THEN
ip_msg(6214,option_name); -- Error Message
return;
END IF;
END IF;
在SQL Server中,我只是使用了ISNUMERIC()
。我想在Oracle中做类似的事情。如,
IF((!ISNUMERIC(value)) or (value<10000) or (value>7200000))
THEN ...
我想你想'is_numeric(STR)= 0'上面,如果我理解正确的OP('!ISNUMERIC(值)'的当量)。 – 2015-03-03 12:47:57
@DavidFaber - 我认为这是一个错字。如果一个字符串不是数字,那么将它与数字值进行比较是没有意义的。 – 2015-03-03 20:23:20
哦,我明白了,你在使用AND的地方有OP。 Mea culpa。 – 2015-03-03 21:00:01