Built-in Functions in SQL 
 Numberic Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  ABS ( m )  | 
 m = value  | 
 Absolute value of m  | 
|  MOD ( m, n )  | 
 m = value, n = divisor  | 
 Remainder of m divided by n  | 
|  POWER ( m, n )  | 
 m = value, n = exponent  | 
 m raised to the nth power  | 
|  ROUND ( m [, n ] )  | 
 m = value, n = number of decimal places, default 0  | 
 m rounded to the nth decimal place   | 
|  TRUNC ( m [, n ] )  | 
 m = value, n = number of decimal places, default 0  | 
 m truncated to the nth decimal place   | 
|  SIN ( n )  | 
 n = angle expressed in radians  | 
 sine (n)   | 
|  COS ( n )  | 
 n = angle expressed in radians  | 
 cosine (n)  | 
|  TAN ( n )  | 
 n = angle expressed in radians  | 
 tan (n)  | 
|  ASIN ( n )  | 
 n is in the range -1 to +1  | 
 arc sine of n in the range -π/2 to +π/2  | 
|  ACOS ( n )  | 
 n is in the range -1 to +1  | 
 arc cosine of n in the range 0 to π  | 
|  ATAN ( n )  | 
 n is unbounded  | 
 arc tangent of n in the range -π/2 to + π/2  | 
|  SINH ( n )  | 
 n = value  | 
 hyperbolic sine of n  | 
|  COSH ( n )  | 
 n = value  | 
 hyperbolic cosine of n  | 
|  TANH ( n )  | 
 n = value  | 
 hyperbolic tangent of n  | 
|  SQRT ( n )  | 
 n = value  | 
 positive square root of n  | 
|  EXP ( n )  | 
 n = value  | 
 e raised to the power n  | 
|  LN ( n )  | 
 n > 0  | 
 natural logarithm of n   | 
|  LOG ( n2, n1 )  | 
 base n2 any positive value other than 0 or 1, n1 any positive value  | 
 logarithm of n1, base n2  | 
|  CEIL ( n )  | 
 n = value  | 
 smallest integer greater than or equal to n  | 
|  FLOOR ( n )  | 
 n = value  | 
 greatest integer smaller than or equal to n  | 
|  SIGN ( n )  | 
 n = value  | 
 -1 if n < 0, 0 if n = 0, and 1 if n > 0  | 
Here are some examples of the use of some of these numeric functions:
select round (83.28749, 2) from dual;
select sqrt (3.67) from dual;
select power (2.512, 5) from dual;
 String Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  INITCAP ( s )  | 
 s = character string  | 
 First letter of each word is changed to uppercase and all other letters
are in lower case.  | 
|  LOWER ( s )  | 
 s = character string  | 
 All letters are changed to lowercase.  | 
|  UPPER ( s )  | 
 s = character string  | 
 All letters are changed to uppercase.  | 
|  CONCAT ( s1, s2 )  | 
 s1 and s2 are character strings  | 
 Concatenation of s1 and s2. Equivalent to  s1 || s2   | 
|  LPAD ( s1, n [, s2] )  | 
 s1 and s2 are character strings and n is an integer value  | 
 Returns s1 right justified and padded left with n characters from s2; 
s2 defaults to space.  | 
|  RPAD ( s1, n [, s2] )  | 
 s1 and s2 are character strings and n is an integer value  | 
 Returns s1 left justified and padded right with n characters from s2; 
s2 defaults to space.  | 
|  LTRIM ( s [, set ] ) | 
 s is a character string and  set  is a set of characters  | 
 Returns s with characters removed up to the first character not
in set; defaults to space  | 
|  RTRIM ( s [, set ] ) | 
 s is a character string and  set  is a set of characters  | 
 Returns s with final characters removed after the last character not
in set; defaults to space  | 
|  REPLACE ( s, search_s [, replace_s ] )  | 
 s = character string, search_s = target string, replace_s = 
replacement string  | 
 Returns s with every occurrence of search_s in s replaced by replace_s;
default removes search_s  | 
|  SUBSTR ( s, m [, n ] )  | 
 s = character string, m = beginning position, n = number of 
characters  | 
 Returns a substring from s, beginning in position m and n characters
long; default returns to end of s.  | 
|  LENGTH ( s )  | 
 s = character string  | 
 Returns the number of characters in s.  | 
|  INSTR ( s1, s2 [, m [, n ] ] )  | 
 s1 and s2 are character strings, m = beginning position, n = 
occurrence of s2 in s1  | 
 Returns the position of the nth occurrence of s2 in s1, beginning at
position m, both m and n default to 1.  | 
Here are some examples of the use of String functions:
select concat ('Alan', 'Turing') as "NAME" from dual;
select 'Alan' || 'Turing' as "NAME" from dual;
select initcap ("now is the time for all good men to come to the aid of the
party") as "SLOGAN" from dual;
select substr ('Alan Turing', 1, 4) as "FIRST" from dual;
  String / Number Conversion Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  NANVL ( n2, n1 )  | 
 n1, n2 = value  | 
 if (n2 = NaN) returns n1 else returns n2  | 
|  TO_CHAR ( m [, fmt ] )  | 
 m = numeric value, fmt = format  | 
 Number m converted to character string as specified by the format  | 
|  TO_NUMBER ( s [, fmt ] )  | 
 s = character string, fmt = format  | 
 Character string s converted to a number as specified by the format  | 
 Formats for TO_CHAR Function 
|  Symbol  | 
 Explanation  | 
|  9  | 
 Each 9 represents one digit in the result  | 
|  0  | 
 Represents a leading zero to be displayed  | 
|  $  | 
 Floating dollar sign printed to the left of number  | 
|  L  | 
 Any local floating currency symbol  | 
|  .  | 
 Prints the decimal point  | 
|  ,  | 
 Prints the comma to represent thousands  | 
 Group Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  AVG ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 The average value of that column  | 
|  COUNT ( * )  | 
 none  | 
 Number of rows returned including duplicates and NULLs  | 
|  COUNT ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Number of rows where the value of the column is not NULL  | 
|  MAX ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Maximum value in the column  | 
|  MIN ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Minimum value in the column  | 
|  SUM ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Sum of the values in the column  | 
|  CORR ( e1, e2 )  | 
 e1 and e2 are column names  | 
 Correlation coefficient between the two columns after eliminating
nulls  | 
|  MEDIAN ( col )  | 
 col = column name  | 
 Middle value in the sorted column, interpolating if necessary  | 
|  STDDEV ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Standard deviation of the column ignoring NULL values  | 
|  VARIANCE ( [ DISTINCT | ALL ] col )  | 
 col = column name  | 
 Variance of the column ignoring NULL values  | 
 Date and Time Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  ADD_MONTHS ( d, n )  | 
 d = date, n = number of months  | 
 Date d plus n months  | 
|  LAST_DAY ( d )  | 
 d = date  | 
 Date of the last day of the month containing d  | 
|  MONTHS_BETWEEN ( d, e )  | 
 d and e are dates  | 
 Number of months by which e precedes d  | 
|  NEW_TIME ( d, a, b )  | 
 d = date, a = time zone (char), b = time zone (char)  | 
 The date and time in time zone b when date d is for time zone a  | 
|  NEXT_DAY ( d, day )  | 
 d = date, day = day of the week  | 
 Date of the first day of the week after d  | 
|  SYSDATE  | 
 none  | 
 Current date and time  | 
|  GREATEST ( d1, d2, ..., dn )  | 
 d1 ... dn = list of dates  | 
 Latest of the given dates  | 
|  LEAST ( d1, d2, ..., dn )  | 
 d1 ... dn = list of dates  | 
 Earliest of the given dates  | 
 Date Conversion Functions 
|  Function  | 
 Input Argument  | 
 Value Returned  | 
|  TO_CHAR ( d [, fmt ] )  | 
 d = date value, fmt = format for string  | 
 The date d converted to a string in the given format  | 
|  TO_DATE ( s [, fmt ] )  | 
 s = character string, fmt = format for date  | 
 String s converted to a date value  | 
|  ROUND ( d [, fmt ] )  | 
 d = date value, fmt = format for string  | 
 Date d rounded as specified by the format  | 
|  TRUNC ( d [, fmt ] )  | 
 d = date value, fmt = format for string  | 
 Date d truncated as specified by the format  | 
 Date Formats 
|  Format Code  | 
 Description  | 
 Range of Values  | 
|  DD  | 
 Day of the month  | 
 1 - 31  | 
|  DY  | 
 Name of the day in 3 uppercase letters  | 
 SUN, ..., SAT  | 
|  DAY  | 
 Complete name of the day in uppercase, padded to 9 characters  | 
 SUNDAY, ..., SATURDAY  | 
|  MM  | 
 Number of the month  | 
 1 - 12  | 
|  MON   | 
 Name of the month in 3 uppercase letters  | 
 JAN, ..., DEC  | 
|  MONTH  | 
 Name of the month in uppercase padded to a length of 9 characters  | 
 JANUARY, ..., DECEMBER  | 
|  RM  | 
 Roman numeral for the month  | 
 I, ..., XII  | 
|  YY or YYYY  | 
 Two or four digit year  | 
 71 or 1971  | 
|  HH:MI:SS  | 
 Hours : Minutes : Seconds  | 
 10:28:53  | 
|  HH 12 or HH 24  | 
 Hour displayed in 12 or 24 hour format  | 
 1 - 12 or 1 - 24  | 
|  MI  | 
 Minutes of the hour  | 
 0 - 59  | 
|  SS  | 
 Seconds of the minute  | 
 0 - 59  | 
|  AM or PM  | 
 Meridian indicator  | 
 AM or PM  | 
|  SP   | 
 A suffix that forces the number to be spelled out.  | 
 e.g. TWO THOUSAND NINE  | 
|  TH  | 
 A suffix meaning that the ordinal number is to be added  | 
 e.g. 1st, 2nd, 3rd, ...  | 
|  FM  | 
 Prefix to DAY or MONTH or YEAR to suppress padding  | 
 e.g. MONDAY with no extra spaces at the end  | 
Here are some examples of the use of the Date functions:
select to_char ( sysdate, 'MON DD, YYYY' ) from dual;
select to_char ( sysdate, 'HH12:MI:SS AM' ) from dual;
select to_char ( new_time ( sysdate, 'CDT', 'GMT'), 'HH24:MI' ) from dual;
select greatest ( to_date ( 'JAN 19, 2000', 'MON DD, YYYY' ),
                  to_date ( 'SEP 27, 1999', 'MON DD, YYYY' ),
		  to_date ( '13-Mar-2009', 'DD-Mon-YYYY' ) )
from dual;
select next_day ( sysdate, 'FRIDAY' ) from dual;
select last_day ( add_months ( sysdate, 1 ) ) from dual;