database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 40512 게시물 읽기
No. 40512
일반항을 사용하지 않는 피보나치
작성자
김흥수(protokhs)
작성일
2014-06-26 16:32
조회수
6,524

 with basedata as

( select level lv, level -1 plv from dual connect by level <= 100 )

'

recur ( lv,plv, n1,n2, v ) as

(

select a.lv,a.plv,0 n1, 0 n2, 1 v from basedata where a.lv = 1 

union all

select a.lv,a.plv,b.n2, b.v, b.n2 + b.v from basedata a, recur b where b.lv = a.plv )

select * from recur

 

참 재미있습니다 아마도 지금까지 불가능하였던 연립방정식의 해 구하기도 가능할 듯

이 글에 대한 댓글이 총 1건 있습니다.

WITH recur(lv, plv, n1, n2, v) AS
(
SELECT 1 lv
     , 0 plv
     , 0 n1
     , 0 n2
     , 1 v
  FROM dual
 UNION ALL
SELECT lv + 1 lv
     , lv     plv
     , n2     n1
     , v      n2
     , n2 + v v
  FROM recur
 WHERE lv < 100
)
SELECT *
  FROM recur
;

마농(manon94)님이 2014-06-30 16:20에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40515오라클에서 mssql db link 할때 odbc 추가하지 않고도 가능한 방법이 있나요? [1]
KMY
2014-06-30
7036
40514QTODBC 설정
이상미
2014-06-29
7104
40513결과 값을 치환하고 싶은데요 [2]
초보
2014-06-27
7285
40512일반항을 사용하지 않는 피보나치 [1]
김흥수
2014-06-26
6524
40511정말 안될까요..? 8버젼 export파일 9i에서 import..
한상원
2014-06-26
6873
40510조인의 효율성 질문 [2]
아폴론
2014-06-26
6884
40507난해한 쿼리 질문 [1]
궁금이
2014-06-25
6606
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.026초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다