使用WHILE语句计算2+6+12+20+...+110的值

database

在上大学的小妹求助一题使用While语句计算数列数值,这似乎是有些难为没有计算机细胞小朋友。

由于都是nosql数据库多年没有怎么接触SQL,查询相关资料,做了如下处理并记录。

循环插入id从0到220的数值: 

use test;

delimiter $$

create procedure pre()

begin

declare i int;

set i=0;

while i<221 do

insert into test.test_where value(i);

set i=i+1;

end while;

end

$$

call pre();

使用WHILE语句计算2+6+12+20+...+110的值:

分析:

A1=2,

A2=A1+2*2,

A3=A2+2*3,

Ak=(Ak-1) + 2*k

具体计算如下:

use test;

delimiter $$

create procedure pred()

begin

declare i int;

declare j int;

set j=2;

set i=2;

set @csum := 0;

while i<111 do

select id, (@csum := @csum + id) AS 总和 from test_where where id=i;

set i=i+2*j;

set j=j+1;

end while;

end

$$

 

以上是 使用WHILE语句计算2+6+12+20+...+110的值 的全部内容, 来源链接: utcz.com/z/531398.html

回到顶部