| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 798 人关注过本帖
标题:大家帮忙下 一个数据更新问题
只看楼主 加入收藏
absentlyh
Rank: 2
等 级:论坛游民
帖 子:105
专家分:14
注 册:2006-6-5
结帖率:0
收藏
已结贴  问题点数:10 回复次数:6 
大家帮忙下 一个数据更新问题
有两个表
表一
证号               姓名     费用1  费用2     费用3
5220107020024    罗幸莲    NULL    NULL    NULL
5220107020024    罗利    NULL    NULL    NULL
5220112060003    黄菊凤    NULL    NULL    NULL
5220201210012    左甲初    NULL    NULL    NULL
表2
证号               姓名     费用1  费用2     费用3
5220107020024    罗幸莲    2    3    4
5220107020024    罗利    8    5    78
5220107020024    罗幸莲    4    7    56
5220107020024    罗幸莲    23    34    3
5220201210012    左甲初    4    78    2
  
 请大家帮忙写个更新语句把表2中的  证号和姓名相同的 费用总和 更新到表1相应中   谢谢了
搜索更多相关主题的帖子: 数据 
2010-07-18 21:33
licomak
Rank: 2
等 级:论坛游民
威 望:1
帖 子:12
专家分:27
注 册:2009-1-16
收藏
得分:1 
update 表1 set 费用1=表2.费用1,费用2=表2.费用2,费用3=表2.费用3 from 表1,表2
where 表1.证号=表2.证号 and 表1.姓名=表2.姓名
2010-07-19 09:58
jksu
Rank: 1
等 级:新手上路
帖 子:5
专家分:9
注 册:2006-10-8
收藏
得分:1 
update 表1 set 费用1 =(select sum(费用1) from 表2 where 表1.证号= 表2.证号 and 表1.姓名= 表2.姓名 group by 证号,姓名),费用2= ......以此类推
2010-07-19 12:06
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:1 
UPDATE 表1 SET 表1.费用1=a.费用1,表1.费用2=a.费用2,表1.费用3=a.费用3
FROM (SELECT 证号,姓名,SUM(费用1) 费用1,SUM(费用2) 费用2,SUM(费用3) 费用3
      FROM 表2 GROUP BY 证号,姓名) a
WHERE 表1.证号=a.证号 AND  表1.姓名=a.姓名
2010-07-19 13:58
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:1 
4楼正解,3楼效率太低

★★★★★为人民服务★★★★★
2010-07-19 19:33
jiang11958
Rank: 1
等 级:新手上路
帖 子:3
专家分:9
注 册:2009-10-25
收藏
得分:1 
证件号本来就是和姓名对应的

update  表1
set 费用1=(select sum(费用1) from 表2
           group by 证号)

set 费用2=(select sum(费用2) from 表2
           group by 证号)

set 费用3=(select sum(费用3) from 表2
           group by 证号)
2010-07-20 15:18
dearwolf4128
Rank: 5Rank: 5
来 自:陕西西安
等 级:职业侠客
威 望:6
帖 子:79
专家分:365
注 册:2010-7-2
收藏
得分:1 
先创建新表,然后使用insert into 新表 select sum(费用1),sum(费用2), sum(费用3),  from 表2 group by 证号(desc),姓名
                   update 表1(费用1,费用2, 费用3)  select 费用1,费用2, 费用3,  from 新表 where 新表.id=表1.id and 新表.姓名=表1.姓名
                   删除新表 drop 新表;
2010-07-21 11:16
快速回复:大家帮忙下 一个数据更新问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037298 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved