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