2017-02-28 102 views
0

我有两个表。第一个是LOA报告,第二个是ACCT。 我需要做的是在LOA中更新ACCT中值的值。我需要比较从LOA中的单独列输入的用户到ACCT中的字段,以确定从中提取数据的正确记录。以下是我到目前为止。任何帮助将非常感激。我一直在研究这个问题的时间太长了,而且我在承认自己什么时候头脑不好的时候不好。我有这个工作作为附加查询工作。但我想要做的是更新,而不是追加。更新语法是即时通讯有问题。根据MS Access 2010中的表2中的值更新表1中的值

INSERT INTO [LOA Report] (ID) 
SELECT Acct.AcctID 
FROM Acct INNER JOIN [LOA report] ON Acct.EmpID = [LOA Report].[Emp ID] 
WHERE ((([Acct]![EmpID])=[LOA report]![Emp ID])); 
+0

你应该总是运行自己的行为的查询,如“选择”查询第一,以确保它们正在筛选正确的表的字段 - 那么将它们更改为更新,追加,删除等 – tahwos

+0

感谢您的提示。 – dan

回答

-1

您是否尝试过使用更新连接?

update res 
set 
res.[colname]=acct.[colname] 
from [LOAreport] res JOIN acct ON Acct.EmpID = res.[EmpID] and res.colname=acct.colname 
+1

MS Access使用'UPDATE ... INNER JOIN'语法。必须指定一个特定的'JOIN'。 – Parfait

0

在访问更新查询将是这样的:

UPDATE [LOA Report] 
INNER JOIN Acct ON Acct.EmpID = [LOA Report].[Emp ID] 
SET [LOA Report].ID = Acct.AcctID 
WHERE ((([Acct]![EmpID])=[LOA report]![Emp ID])); 
+0

谢谢。现在测试。 – dan

+0

完美工作。万分感谢。 – dan

相关问题