求助SQL语句!

xiaowangzi 2005-05-08 04:44:41
现在有两个表一个表存放用户的信息(表1)一个表存放用户上传的图片(表2)其中表2中有一个字段的存放该图片的大小PhotoSize。现在我想在表1中增加一个字段来存放用户上传图片一共所占的大小。获得用户上传图片空间的大小是通过表2对该用户上传的图片记录中的PhotoSize的总和!
谢谢!
...全文
153 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Well 2005-05-08
  • 打赏
  • 举报
回复
alter table 表1 add sumsize

update 表1
set sumsize=B.PhotoSize
from 表1 A,(select userID, sum(B.PhotoSize) as PhotoSize from 表2 group by userID) B
where A.userID=B.userID

Well 2005-05-08
  • 打赏
  • 举报
回复
alter table 表1 add sumsize

select userID,sum(PhotoSize) as PhotoSize into #temp
from 表2 group by userID

update 表1 set sumsize= B.PhotoSize
from 表1 A,#temp B
where A.userID=B.userID
Well 2005-05-08
  • 打赏
  • 举报
回复
alter table 表1 add sumsize

update A
set sumsize=(select sum(B.PhotoSize) from 表2 B,表1 A where A.userID=B.userID)
txqgyf 2005-05-08
  • 打赏
  • 举报
回复
我的想法是分两步走:
1:先向表1增加字段,alter table 表1 add sumsize
2:insert into 表1 (sumsize)
values (select sum(photosize) from 表2)
暂时还没有想到一步就行的办法
tdtjjiao 2005-05-08
  • 打赏
  • 举报
回复
不是什么难的问题方法很多
xluzhong 2005-05-08
  • 打赏
  • 举报
回复
select a.*,isnull(b.photosize,0) as photosize
from 表1 a
left join (select userid,sum(isnull(photosize,0)) as photosize 表2 group by userid) b
on a.userid=b.userid
sunmingdong 2005-05-08
  • 打赏
  • 举报
回复
select *,totalsize=(select sum(photosize) from t2 where t1.userid=userid) from t1
sunmingdong 2005-05-08
  • 打赏
  • 举报
回复
这个问题是不是建立一个view会好点,这样每次select这个view都会计算一次所查询用户上传图片的总和
edgethinking 2005-05-08
  • 打赏
  • 举报
回复
select *, (select sum (photoSize) from table2 where table1.UserID = table2.UserID) as spaceNum from table1
edgethinking 2005-05-08
  • 打赏
  • 举报
回复
update table1 set spaceNum = (select sum (photoSize) from table2 where table1.UserID = table2.UserID)

34,575

社区成员

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

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