
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数据库行求和的问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)