create or replace function f (n positive) return integer is
begin
if n = 1 then
return 1;
else
return n * f(n - 1);
end if;
end f;
/Function createdSQL> select f(10) from dual; F(10)
----------
362880010的阶乘
begin
if n = 1 then
return 1;
else
return n * f(n - 1);
end if;
end f;
/Function createdSQL> select f(10) from dual; F(10)
----------
362880010的阶乘
解决方案 »
- Mysql DDL转Oracle
- ORA-12505 ORA-12512 ORA-12514
- 一个4年的普通DBA给初学者的一些建议
- 关于Where子句的解析顺序,谢谢大牛指导
- 高手们,在线等,各位高手,新手求救一条oracle的查询语句
- 使用sql loder 将txt 导入到oracle 数据库如何去掉整张表每个列的空格?
- 存储过程调用问题
- 如何让select * from table where myname='myname'不区分大小写?
- RedHatLinux AE3 安装orcle9204的新问题
- 初级问题. SID 和 Schema 的概念是什么?
- 关于数据库的学习方法
- 有北京朗新信息系统的同事们请跟贴
create or replace procedure pro(p_num in number)
as
num number:=p_num;
begin
if num=0 then
return;
else
pro(p_num-1);
end if;
dbms_output.put_line(num);
end;
/
SQL> exec pro(10);
1
2
3
4
5
6
7
8
9
10PL/SQL procedure successfully completed