码迷,mamicode.com
首页 > 数据库 > 详细

SQL Server ->> 斐波那契数列(Fibonacci sequence)

时间:2016-04-08 00:54:46      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

 斐波那契数列(Fibonacci sequence)的T-SQL实现

 

;WITH T AS (
SELECT 1 AS NUM, CAST(1 AS BIGINT) AS curr, CAST(NULL AS BIGINT) AS prv
UNION ALL
SELECT curr.NUM + 1 AS NUM, CAST(CASE WHEN prv IS NULL THEN curr ELSE curr + prv END AS BIGINT) AS curr, CAST(curr AS BIGINT) AS prv
FROM T curr
WHERE CAST(CASE WHEN prv IS NULL THEN curr + 1 ELSE curr + prv END AS BIGINT) <= CAST(POWER(2,16) AS BIGINT) * CAST(POWER(2,16) AS BIGINT)/2
)

SELECT curr FROM T

 

SQL Server ->> 斐波那契数列(Fibonacci sequence)

标签:

原文地址:http://www.cnblogs.com/jenrrychen/p/5343539.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!