oracle如何实现阶乘,oracle累乘函数
用数据库怎样求解阶乘?
declare @sum bigint,@count int
创新互联公司专注于蚌埠网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供蚌埠营销型网站建设,蚌埠网站制作、蚌埠网页设计、蚌埠网站官网定制、微信平台小程序开发服务,打造蚌埠网络公司原创品牌,更为您提供蚌埠网站排名全网营销落地服务。
select @sum=1,@count=1
label:
select @sum=@sum*@count
select @count=@count +1
if @count =20
goto label
select @sum
这个是sql的 1到20的阶乘 count少于15可以直接定义@sum int 大于的话会算数溢出
oracle计算6的阶乘
select rownum rn, dbms_aw.eval_number(replace(wmsys.wm_concat(rownum)over(order by rownum), ',', '*')) serial_multi
2 from dual connect by rownum =6;
可以参照
Oracle编写的1至100和的算法 用循环控制结构中至少三种循环方式计算10的阶乘 急求
10的阶乘
简单(loop)循环
1 declare
2 i number(2) :=1;
3 s number(10):=1;
4 name varchar(8):=' simple';
5 begin
6 loop
7 s:=s*i;
8 i:=i+1;
9 dbms_output.put_line(s||''||name);
10 exit when i10;
11 end loop;
12* end;
---------------------------------------------------可爱的分割线(脸红)--------------------------------------------------------
for循环
1 declare
2 i number(2) :=1;
3 s number(10):=1;
4 name varchar(8):=' for';
5 begin
6 loop
7 s:=s*i;
8 i:=i+1;
9 dbms_output.put_line(s||''||name);
10 end loop;
11* end;
SQL /
1 for
2 for
6 for
24 for
120 for
720 for
5040 for
40320 for
362880 for
3628800 for
---------------------------------------------------可爱的分割线(脸红)--------------------------------------------------------
while循环
1 declare
2 i number(2) :=1;
3 s number(10):=1;
4 name varchar(8):=' while';
5 begin
6 while i=10 loop
7 s:=s*i;
8 i:=i+1;
9 dbms_output.put_line(s||''||name);
10 end loop;
11* end;
SQL /
1 while
2 while
6 while
24 while
120 while
720 while
5040 while
40320 while
362880 while
3628800 while
网站栏目:oracle如何实现阶乘,oracle累乘函数
网页地址:http://azwzsj.com/article/hddhpe.html