求根据一个表对另一个表更新数据的SQL语句

jacky00yyp 2008-10-29 08:16:31
求根据一个表对另一个表更新数据的SQL语句
001产品是由一定配比数量的 002,003,004配件组成
表1
A B 数量
001 002 10
001 003 5
001 004 6
表2
编号 数量
001 0
002 10
003 5
004 6
需要一条SQL语句根据获取的编号到表1的A里面找组成001的产品,然后加减表2相应产品
表2(结果)
编号 数量
001 1
002 0
003 0
004 0

...全文
234 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zipgirl 2008-11-05
  • 打赏
  • 举报
回复
UPDATE 表2 INNER JOIN 表1 ON 表2.零件编号 = 表1.零件编号 SET 表2.数量 = [表2]![数量]-[表1]![零件数量]
WHERE 表1.产品编号="001";


晕了,中文打得。。。
zipgirl 2008-11-05
  • 打赏
  • 举报
回复
UPDATE 表2 INNER JOIN 表1 ON 表2.零件编号 = 表1.零件编号 SET 表2.数量 = [表2]![数量]-[表1]![零件数量];


晕啊,怎么都用些中文字罗
ewang11 2008-11-01
  • 打赏
  • 举报
回复
3楼的代码在ACCESS环境是可行的
jacky00yyp 2008-11-01
  • 打赏
  • 举报
回复
dbobj.getcom("insert into zh_ccgl_pd_detailed select '" + txtid.Text + "' AS billcode,id,Material_qty,Material_qty AS Material_pd  from zh_Material");
可能跟这个类似,上面的好象都不行哦
lvpipashu 2008-10-31
  • 打赏
  • 举报
回复
支持感谢!
smithg 2008-10-31
  • 打赏
  • 举报
回复
试试这样行不行。。。

环境:Access 2000 Query

UPDATE 表1, 表2
SET 表2.数量= 表2.数量 - 表1.零件数量
WHERE 表1.产品编号 = '001'
AND 表1.零件编号 = 表2.零件编号
IMAGSE 2008-10-31
  • 打赏
  • 举报
回复
友情帮顶~
jacky00yyp 2008-10-29
  • 打赏
  • 举报
回复
一种产品是由多种配件组成
表1
产品编号 零件编号 零件数量
001 002 10
001 003 5
001 004 6
表2
零件编号 数量
002 10
003 5
004 6
需要一条SQL,搜索表1里所有属于 产品 001的零件,在表2里面减去零件
表2(结果)
零件编号 数量
002 0
003 0
004 0
ewang11 2008-10-29
  • 打赏
  • 举报
回复
表2的编号对应表1的B 结果为什么001为1而不是0呢?
wwwwb 2008-10-29
  • 打赏
  • 举报
回复
在ACCESS中:
update b2 set 数量=数量 -dsum('零件数量','b1',"零件编号='" & b2.零件编号 & "'
and b1.产品编号='001'")

or
select b2.零件编号,b2.数量-sa from b2
left join (select 零件编号,sum(零件数量) as sa from b1 where 产品编号='001') b
on b2.零件编号=b.零件编号

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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