========== 求句SQL语句 ==========(50分)

  • 主题发起人 主题发起人 JasonLaw
  • 开始时间 开始时间
J

JasonLaw

Unregistered / Unconfirmed
GUEST, unregistred user!
表A

物品ID 库存ID 名称 编号
2 1 豆 A
3 1 米 B
5 1 面 C
9 1 纸 D
10 2 豆 A
11 2 米 B
22 2 面 C
23 2 纸 D
..............


表B

库存ID 名称 编号 物品ID
1 豆 A
1 豆 A
1 豆 A
1 米 B
1 米 B
1 米 B
1 面 C
1 纸 D
2 豆 A
2 豆 A
2 豆 A
2 米 B
2 米 B
2 米 B
2 面 C
2 纸 D
.............


我想将 表A 中 物品ID 对应的填到 表B 中。

能用一句 SQL 语句搞掂吗?

如果不能,,用储存过程又怎么样写呢?


数据库是 MSSQL2000
 
Access
update 表B as b inner join 表A as a on A.名称 = B.名称 and A.库存ID = B.库存ID and A.编号 = B.编号
set a.物品ID = b.物品ID
 
既然我都提到可以用 存储过程了。

呵呵,应该就不是 ACCESS 了。因为好象它不支持 存储过程 吧。
 
呵呵,忘记了,我现在是用Oracle的。那Jason Law你是什么数据库啊?试一下这个

update 表B as b
set b.物品ID = (select a.物品ID
from 表A as a
where A.名称 = B.名称
and A.库存ID = B.库存ID
and A.编号 = B.编号)
 
同意楼上~
不用存储过程。
 
CREATE PROC MYPROC
AS
update b set b.WPID=(select a.wpid from a where a.name=b.name and a.kcID=b.kcID and a.bh=b.bh)
GO
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部