日期:2014-05-16  浏览次数:20915 次

求助:用ACCESS查询,对比新旧两张表,我写的语句怎么老是不行啊
大家再帮我看看,我现在用ACCESS进行数据处理,现在有新旧两张表,要求对比两张表A,B的两个字段   A1,A2,B1,B2,当满足条件A1=B1且A2=B2时,在新表的MM字段填上0
 
  表A:A1,A2,A3,...MM,..
  表B:B1,B2,B3,...MM,..
 
我的语句如下:
                    UPDATE   B
                    SET   MM=0
                    FROM   A
                    WHERE   B.B1=A.A1   AND   B.B2=A.A2
   
以上是在ACCESS查询里做的,我的语句该怎么修改,请各位帮忙看一下,谢谢了啊!

------解决方案--------------------
UPDATE a inner join b on B.B1=A.A1 AND B.B2=A.A2 SET B.MM=0
------解决方案--------------------


Access使用的是Jet-SQL,SQL Server使用的是T-SQL,两者用法上相差很大。


JET SQL 帮助(jet4 access2000)下载地址

http://www.access911.net/index.asp?board=8&recordid=75FAB71E&tt=


------解决方案--------------------
UPDATE B,a SET MM=0
WHERE B.B1=A.A1 AND B.B2=A.A2
or

UPDATE a inner join b on B.B1=A.A1 AND B.B2=A.A2 SET B.MM=0
------解决方案--------------------
UPDATE a inner join b on B.B1=A.A1 AND B.B2=A.A2 SET B.MM=0


建议使用明确指定inner join的方式,这是标准写法。