sum

yubofighting 2011-04-22 04:17:59
if sum(x)% (满足条件的行数)==0
then value=sum(x)/(满足条件的行数) //每一行对应一个value

else
将其中一个value设置成一个值后,sum(x)% (满足条件的行数)==0

不知大家理解没有?

测试数据
表一
x
1
2
3
4

表二
a b c values
1 2 3 values=sum(x)/行数 ----values值加起来的总和等于sum(x)

表一和表二行数相同
...全文
94 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶子 2011-04-22
  • 打赏
  • 举报
回复

--定义表1
declare @表一 table (x int)
insert into @表一
select 1 union all
select 2 union all
select 3 union all
select 4
--定义表2
declare @表二 table (a int,b int,c int,[values] int)
insert into @表二
select 1,2,3,null

--得到表1的sum
declare @sum int
select @sum=sum(x) from @表一

--满足条件的行数 什么条件?类如x>2

--得到满足条件的行数
declare @tjsum int
select @tjsum=count(*) from @表一
where x>2

--判断余数为0
if(@sum%@tjsum=0)
update @表二 set [values]=@sum/@tjsum
else
--不懂了
yubofighting 2011-04-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 maco_wang 的回复:]
SQL code

declare @表二 table (a int,b int,c int,[values] int)
insert into @表二
select 1,2,3,null

update @表二 set [values]=a+b+c
select * from @表二
/*
a b c values
……
[/Quote]

饿。。。看来我的表述有问题
叶子 2011-04-22
  • 打赏
  • 举报
回复

declare @表二 table (a int,b int,c int,[values] int)
insert into @表二
select 1,2,3,null

update @表二 set [values]=a+b+c
select * from @表二
/*
a b c values
----------- ----------- ----------- -----------
1 2 3 6
*/

????
yubofighting 2011-04-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 maco_wang 的回复:]
表一和表二行数相同? 感觉行转列了?
[/Quote]

汗。。。
叶子 2011-04-22
  • 打赏
  • 举报
回复
表一和表二行数相同? 感觉行转列了?

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧