在数据库中编写1到100的求和

在数据库中编写1到100的求和,第1张

declare @iSum int

declare @iCount int

select @iSum = 0

select @iCount = 1

while @iCount <= 100

begin

select @iSum = @iSum + @iCount

select @iCount = @iCount + 1

end

create Table T

(

    id int,

    a  int,

    b  int

)

Insert into t values(1,1,1)    

Insert into t values(2,2,1)    

Insert into t values(3,3,1)  

Insert into t values(4,4,1)    

Insert into t values(5,5,1)   

Insert into t values(6,6,1)   

/思路:

id可能不连续,所以先用id排序,产生一个记录号id2

然后按3条记录一组产生一个分组号G,接着按G分组求和,id取最大

最后更新

/

With CT

AS

(

    Select max(id) As id,SUM(a) As A,SUM(B) As B

    from

    (

    Select ,(id2+2)/3 As G 

    from (Select ,ROW_NUMBER() over(order by id) As id2 from T) S

    )M Group by G

)

Update T Set a=CTA-Ta,b=CTB-Tb

From CT

where Tid=CTid

以上就是关于在数据库中编写1到100的求和全部的内容,包括:在数据库中编写1到100的求和、关于SqlServer数据库行求和的问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9331117.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存