Delphi+Access 表B更新表A,要求:取最大值来更新 。更详细请进。谢谢。(100)

  • 主题发起人 主题发起人 walimg
  • 开始时间 开始时间
W

walimg

Unregistered / Unconfirmed
GUEST, unregistred user!
表B有好几条 [商品编码] 一样的记录。表A的 [商品编码]各不相同。 表B,表A,都有一个字段[数量],要求表B的字段 [数量] 最大值的那条记录来更新表A 的[数量]。------------------temp1.SQL.Add('update 表A a ,表B b set a.数量=b.数量 where a.商品编码=b.商品编码');请问再哪里再加条件?谢谢。
 
不知道Access是否支持条件里面加子查询,你可以试试这样:'update 表A a ,表B b set a.数量=b.数量 where a.商品编码=b.商品编码 and b.数量 = (Select Max(数量) From 表B)'不行的话你就先把B表 [数量] 最大的那条记录的值查出来后作为条件加到后面即可。
 
你这样子只更新了表A一条最大值的记录,其它记录没有更新。我测试过了。哪位高手再指点一下。谢谢了。
 
update s1 set s1.数量=b.数量 from s1,(Select 商品编号,Max(数量) as '数量' From s2 group by 商品编号 ) b where s1.商品编号=b.商品编号这是MS SQL写的 应该类似吧
 
update s1 set s1.数量=b.数量 from s1,(Select 商品编号,Max(数量) as '数量' From s2 group by 商品编号 ) b where s1.商品编号=b.商品编号
 
后退
顶部