NUMERIC FUNCTIONS

NUMERIC FUNCTIONS
Abs Sign Sqrt Mod Nvl
Power Exp Ln Log Ceil
Floor Round Trunk Bitand Greatest
Least Coalesce    

 

ABS

(Absolute value is the measure of the magnitude of value. Absolute value is always a positive number)

Syntax abs (value)
Ex: SQL> select abs(5), abs(-5), abs(0), abs(null) from dual;

 

ABS(5)    ABS(-5)     ABS(0)  ABS(NULL)

———- ———-    ———- ————-

5              5                0

 

SIGN

(Sign gives the sign of a value)

Syntax sign (value)
Ex: SQL> select sign(5), sign(-5), sign(0), sign(null) from dual;

 

SIGN(5)   SIGN(-5)    SIGN(0) SIGN(NULL)

———-   ———-     ———- ————–

1            -1                  0

 

 

SQRT

(This will give the square root of the given value)

Syntax sqrt (value) —  here value must be positive
Ex: SQL> select sqrt(4), sqrt(0), sqrt(null), sqrt(1) from dual;

SQRT(4)    SQRT(0) SQRT(NULL)    SQRT(1)

———-    ———- —————    ———-

2               0                              1

 

MOD

(This will give the remainder)

Syntax mod (value, divisor)
Ex: SQL> select mod(7,4), mod(1,5), mod(null,null), mod(0,0), mod(-7,4) from dual;

 

MOD(7,4)   MOD(1,5) MOD(NULL,NULL)   MOD(0,0)  MOD(-7,4)

————   ———-  ———————    ———– ————-

3               1                                        0               -3

 

NVL

(This will substitute the specified value in the place of null values.)

Syntax nvl (null_col, replacement_value)
Ex: SQL> select * from student; — here for 3rd row marks value is null

NO NAME      MARKS

— ——-      ———

1     a         100

2     b          200

3     c

  SQL> select no, name, nvl(marks,300) from student;

NO NAME  NVL(MARKS,300)

—  ——-  ———————

1    a             100

2    b             200

3    c             300

 

  SQL> select nvl(1,2), nvl(2,3), nvl(4,3), nvl(5,4) from dual;

 

NVL(1,2)   NVL(2,3)   NVL(4,3)   NVL(5,4)

———-    ———-    ———-    ———-

1               2             4                   5

  SQL> select nvl(0,0), nvl(1,1), nvl(null,null), nvl(4,4) from dual;

NVL(0,0)   NVL(1,1) NVL(null,null)  NVL(4,4)

———-    ———- —————–   ———-

0              1                             4

 

POWER

( Power is the ability to raise a value to a given exponent)

Syntax power (value, exponent)
Ex: SQL> select power(2,5), power(0,0), power(1,1), power(null,null), power(2,-5) from dual;

 

POWER(2,5) POWER(0,0) POWER(1,1) POWER(NULL,NULL) POWER(2,-5)

————–  ————–  —– ——— ———————–  —-

32                    1                  1                                       .03125

 

 

EXP

(This will raise e value to the give power)

Syntax exp (value)
Ex: SQL> select exp(1), exp(2), exp(0), exp(null), exp(-2) from dual;

 

EXP(1)       EXP(2)       EXP(0)  EXP(NULL)    EXP(-2)

——–       ———     ——–  ————-    ———-

2.71828183  7.3890561          1                          .135335283

 

 

 

 

 

 

LN

(This is based on natural or base e logarithm)

Syntax ln (value)    — here value must be greater than zero which is positive only.
Ex: SQL> select ln(1), ln(2), ln(null) from dual;

LN(1)      LN(2)      LN(NULL)

——-      ——-      ————

0     .693147181

Ln and Exp are reciprocal to each other.

EXP (3) = 20.0855369

LN (20.0855369) = 3

 

LOG

(This is based on 10 based logarithm)

Syntax log (10, value)     — here value must be greater than zero which is positive only.
Ex: SQL> select log(10,100), log(10,2), log(10,1), log(10,null) from dual;

LOG(10,100)  LOG(10,2)  LOG(10,1) LOG(10,NULL)

—————   ———–   ————  —————–

2            .301029996          0

LN (value) = LOG (EXP(1), value)

SQL> select  ln(3), log(exp(1),3) from dual;

LN(3)      LOG(EXP(1),3)

——-      —————–

1.09861229    1.09861229

 

CEIL

(This will produce a whole number that is greater than or equal to the specified value.)

Syntax ceil (value)
Ex: SQL> select ceil(5), ceil(5.1), ceil(-5), ceil( -5.1), ceil(0), ceil(null) from dual;

 

CEIL(5)  CEIL(5.1)   CEIL(-5) CEIL(-5.1)    CEIL(0) CEIL(NULL)

———  ———–    ———- ————     ——–  ————–

5            6                -5            -5                 0

 

FLOOR

(This will produce a whole number that is less than or equal to the specified value.)

Syntax floor (value)
Ex: SQL> select floor(5), floor(5.1), floor(-5), floor( -5.1), floor(0), floor(null) from dual;

FLOOR(5) FLOOR(5.1)  FLOOR(-5) FLOOR(-5.1)   FLOOR(0) FLOOR(NULL)

———–  ————-   ————  ————–    ———–  —————-

5               5                 -5                 -6              0

 

 

ROUND

(This will rounds numbers to a given number of digits of precision)

Syntax round (value, precision)
Ex: SQL> select round(123.2345), round(123.2345,2), round(123.2354,2) from dual;

 

ROUND(123.2345) ROUND(123.2345,0) ROUND(123.2345,2) ROUND(123.2354,2)

—————–   ———————-  ———————  ——————–

123                          123                            123.23                   123.24

 

  SQL> select round(123.2345,-1), round(123.2345,-2), round(123.2345,-3), round(123.2345,-4) from dual;

ROUND(123.2345,-1) ROUND(123.2345,-2) ROUND(123.2345,-3) ROUND(123.2345,-4)

———————– ————————-  ————————   ————————

120                                100                            0                                        0

 

  SQL> select round(123,0), round(123,1), round(123,2) from dual;

ROUND(123,0) ROUND(123,1) ROUND(123,2)

—————–  —————–  —————-

123                   123                             123

 

  SQL> select round(-123,0), round(-123,1), round(-123,2) from dual;

ROUND(-123,0) ROUND(-123,1) ROUND(-123,2)

——————  —————–   ——————-

-123                 -123                    -123

 

  SQL> select round(123,-1), round(123,-2), round(123,-3), round(-123,-1), round(-123,-2), round(-123,-3) from dual;

ROUND(123,-1) ROUND(123,-2) ROUND(123,-3) ROUND(-123,-1) ROUND(-123,-2)     ROUND(-123,-3)

————- ————- ————- ————– ————– ————————–

120           100             0               -120               -100              0

  SQL> select round(null,null), round(0,0), round(1,1), round(-1,-1), round(-2,-2) from dual;

ROUND(NULL,NULL) ROUND(0,0) ROUND(1,1) ROUND(-1,-1) ROUND(-2,-2)

———————–  ————–  ————–  —————-  —————-

0                       1                   0                    0

 

 

TRUNC

(This will truncates or chops off digits of precision from a number)

Syntax trunc (value, precision)
Ex: SQL> select trunc(123.2345), trunc(123.2345,2), trunc(123.2354,2) from dual;

TRUNC(123.2345) TRUNC(123.2345,2) TRUNC(123.2354,2)

———————  ———————–  ———————-

123                        123.23                     123.23

  SQL> select trunc(123.2345,-1), trunc(123.2345,-2), trunc(123.2345,-3),trunc(123.2345,-4) from dual;

TRUNC(123.2345,-1) TRUNC(123.2345,-2) TRUNC(123.2345,-3)

————————  ————————   ———————–

120                              100                                0

  SQL> select trunc(123,0), trunc(123,1), trunc(123,2) from dual;

TRUNC(123,0) TRUNC(123,1) TRUNC(123,2)

—————-   —————-  —————–

123                    123                 123

  SQL> select trunc(-123,0), trunc(-123,1), trunc(-123,2) from dual;

TRUNC(-123,0) TRUNC(-123,1) TRUNC(-123,2)

—————–   —————–  —————–

-123                    -123                -123

  SQL> select trunc(123,-1), trunc(123,-2), trunc(123,-3), trunc(-123,-1), trunc( -123,2), trunc(-123,-3) from dual;

TRUNC(123,-1) TRUNC(123,-2) TRUNC(123,-3) TRUNC(-123,-1) TRUNC(-123,2) TRUNC(-123,-3)

————- ————- ————- ————– ————- ———————————

120           100             0                   -120          -123              0

  SQL> select trunc(null,null), trunc(0,0), trunc(1,1), trunc(-1,-1), trunc(-2,-2) from dual;

TRUNC(NULL,NULL) TRUNC(0,0) TRUNC(1,1) TRUNC(-1,-1) TRUNC(-2,-2)

———————–  ————-  ————-  —————  —————-

0                   1                     0                0

 

BITAND

(This will perform bitwise and operation.)

Syntax bitand (value1, value2)
Ex: SQL> select bitand(2,3), bitand(0,0), bitand(1,1), bitand(null,null), bitand(-2,-3) from dual;

BITAND(2,3) BITAND(0,0) BITAND(1,1) BITAND(NULL,NULL) BITAND(-2,-3)

————–  —————  ————–   ————————  ————-

2                 0                  1                                                        -4

 

GREATEST

(This will give the greatest number.)

Syntax greatest (value1, value2, value3 … valuen)
Ex: SQL> select greatest(1, 2, 3), greatest(-1, -2, -3) from dual;

GREATEST(1,2,3) GREATEST(-1,-2,-3)

——————–  ———————–

3                          -1

1             If all the values are zeros then it will display zero.

2             If all the parameters are nulls then it will display nothing.

3             If any of the parameters is null it will display nothing.

 

LEAST

(This will give the least number.)

Syntax least (value1, value2, value3 … valuen)
Ex: SQL> select least(1, 2, 3), least(-1, -2, -3) from dual;

LEAST(1,2,3)         LEAST(-1,-2,-3)

——————–  ———————–

1                          -3

1.   If all the values are zeros then it will display zero.

2.   If all the parameters are nulls then it will display nothing.

3.   If any of the parameters is null it will display nothing.

 

COALESCE

(This will return first non-null value.)

Syntax coalesce (value1, value2, value3 … valuen)
Ex: SQL> select coalesce(1,2,3), coalesce(null,2,null,5) from dual;

COALESCE(1,2,3) COALESCE(NULL,2,NULL,5)

——————-   ——————————-

1                                  2

 

Comments