求一个SQL语句 ( 积分: 50 )

  • 主题发起人 主题发起人 hawii
  • 开始时间 开始时间
H

hawii

Unregistered / Unconfirmed
GUEST, unregistred user!
两个表A,B结构相同:
用户:文本
贴数:数字
现在要把表B中的数据添加到表A。若表A不存在表B中的用户则新增,否则贴数累加。
能用一句SQL实现吗?(我想比较困难)。
怎么实现比较好?请大家帮忙想想。
 
遊標實現吧!或者多步sql語句完成
 
这个应该用存储过程来做!很简单的
 
Dong_HC兄,既然简单,帮忙写个例子。拜托!
 
两句话
insert into a select * from b where b.用户 not in (select 用户 from a)

update a set 贴数=贴数+b.贴数 from b where b.用户=a.用户
 
勇者:中间是不是还要加删除原来的阿?否则原来没有的会重复记数。
 
勇者的已經OK了
 
update a set 贴数=贴数+b.贴数 from b where b.用户=a.用户
这句不行,FROM出错。
 
update a set 贴数=贴数+b.贴数 from a left join b on b.用户=a.用户
 
选择在B表中存在而A表中没有的记录Insert到A表中
Insert into A(User)
Select User
From B
Where B.user not in (select user from A)
更新贴数
Update A
Set A.贴数 = A.贴数 + B.贴数
From A inner join B On A.User = B.User
 
update a set a.贴数=a.贴数+b.贴数 from b where b.用户=a.用户
这样就可以了
 
有点难度,不会...........
 
update from老出错。在access中。最后这样实现了。

update a,b set a.贴数=a.贴数+b.贴数 where a.用户=b.用户。

把插入方后面就可以,中间也不用删除。

奇怪吗?
 
楼主你要声明一下是ACCESS数据库呀,ACCESS 和SQL的语法是有点区别的
 
哈哈哈,分真难分阿!
 
多人接受答案了。
 
后退
顶部