Use sign function in user-defined function : SIGN « Numeric Math Functions « Oracle PL / SQL






Use sign function in user-defined function

 
SQL>
SQL> CREATE OR REPLACE FUNCTION get_num (
  2     p_highval             NUMBER,
  3     p_lowval              NUMBER := 0,
  4     p_negatives_allowed   BOOLEAN := FALSE,
  5     p_scale               PLS_INTEGER := 0
  6  )
  7     RETURN NUMBER
  8  IS
  9     l_ret   NUMBER;
 10     l_sign   NUMBER := 1;
 11  BEGIN
 12     IF (p_negatives_allowed) THEN
 13        l_sign := SIGN (DBMS_RANDOM.random);
 14     END IF;
 15
 16     l_ret := l_sign * ROUND (DBMS_RANDOM.VALUE (p_lowval, p_highval), p_scale);
 17     RETURN l_ret;
 18  END;
 19  /

Function created.

 








Related examples in the same category

1.SIGN: Returns 1 if the argument is positive, 0 if the argument is negative
2.SIGN(0)
3.-SIGN(x): Returns -1 if x is negative, 1 if x is positive, or 0 if x is zero
4.SIGN(5)
5.select sign( 100 - ( 50 * 2 ) ) "Using expressions"
6.select sign( 123 * -1 + 122) "Using expressions"
7.Use SIGN in PL/SQL statement