In PL/SQL a recursive FUNCTION is a function which either calls itself or is in a potential cycle of function calls. As the definition specifies, there are two types of recursive functions. When a subprogram calls itself, it is referred to as a recursive call and the process is known as recursion.