最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

Oracle实现fibonacci数列

来源:懂视网 责编:小采 时间:2020-11-09 12:09:13
文档

Oracle实现fibonacci数列

Oracle实现fibonacci数列:Oracle实现fibonacci数列方法一:SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib Oracle实现fibonacci数列方法一: SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib', ', '/')),'/','')'...' fiblist
推荐度:
导读Oracle实现fibonacci数列:Oracle实现fibonacci数列方法一:SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib Oracle实现fibonacci数列方法一: SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib', ', '/')),'/','')'...' fiblist

Oracle实现fibonacci数列方法一:SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib||

Oracle实现fibonacci数列方法一:

SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib||', ', '/')),'/','')||'...' fiblist
FROM (
SELECT n, fib, ROW_NUMBER()
OVER (ORDER BY n) r
FROM (select n, round((power((1+sqrt(5))*0.5, n)-power((1-sqrt(5))*0.5, n))/sqrt(5)) fib
from (select level n
from dual
connect by level <= 16) t1) t2
)
START WITH r=1
CONNECT BY PRIOR r = r-1;
/*
FIBLIST
--------------------------------------------------------------------------------
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, ...
*/


方法二:

DECLARE
A NUMBER;
B NUMBER;
C NUMBER;
BEGIN
A:=0;
B:=1;
C:=1;
FOR i IN 1..20 LOOP
DBMS_OUTPUT.PUT_LINE('the '||i||' number is:'||C);
C:=A+B;
A:=B;
B:=C;
END LOOP;
END;
/*
the 1 number is:1
the 2 number is:1
the 3 number is:2
the 4 number is:3
the 5 number is:5
the 6 number is:8
the 7 number is:13
the 8 number is:21
the 9 number is:34
the 10 number is:55
the 11 number is:89
the 12 number is:144
the 13 number is:233
the 14 number is:377
the 15 number is:610
the 16 number is:987
the 17 number is:1597
the 18 number is:2584
the 19 number is:4181
the 20 number is:6765
*/

方法三:

select max(s) || ', ...' fibonacci_list
from
(select s
from dual
model
return all rows
dimension by ( 0 d )
measures ( cast(' ' as varchar2(200)) s, 0 f)
rules iterate (16)
( f[iteration_number] = decode(iteration_number, 0, 1, 1, 1, f[iteration_number-1] + f[iteration_number-2]),
s[iteration_number] = decode(iteration_number, 0, to_char(f[iteration_number]), s[iteration_number-1] || ', ' || to_char(f[iteration_number]))
)
)
/*
FIBONACCI_LIST
--------------------------------------------------------------------------------
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, ...
*/

linux

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

Oracle实现fibonacci数列

Oracle实现fibonacci数列:Oracle实现fibonacci数列方法一:SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib Oracle实现fibonacci数列方法一: SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(fib', ', '/')),'/','')'...' fiblist
推荐度:
标签: 实现 oracle 数列
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top