Ms access 将字段复制到Access中的另一个表

Ms access 将字段复制到Access中的另一个表,ms-access,Ms Access,我有点不好意思在这里问这个问题,但这里说: 我有两张桌子,你可以在这里看到: 我需要将effortid从一个表复制到另一个表中,确保这些值仍然保持校正关系。每个的主键都是loggerid和datetime的组合。最好的方法是什么 提前感谢,不要开玩笑:)改为更新查询。联接应该正常工作,但不会添加缺少的行。要做到这一点,您将使用一个追加查询,就像您的安装程序一样,但是要使用一个左连接和一个null检查。下面的示例使用LogSiteID表中的信息更新LogID表 将记录器站点ID中缺少的记录追加到

我有点不好意思在这里问这个问题,但这里说:

我有两张桌子,你可以在这里看到:

我需要将effortid从一个表复制到另一个表中,确保这些值仍然保持校正关系。每个的主键都是loggerid和datetime的组合。最好的方法是什么


提前感谢,不要开玩笑:)

改为更新查询。联接应该正常工作,但不会添加缺少的行。要做到这一点,您将使用一个追加查询,就像您的安装程序一样,但是要使用一个左连接和一个null检查。下面的示例使用LogSiteID表中的信息更新LogID表

将记录器站点ID中缺少的记录追加到LogID

INSERT INTO logID ( [Datetime], loggerid, temp, effortid )
SELECT ls.datetime, ls.loggerid, ls.temp, ls.effortid
FROM logID AS l RIGHT JOIN [Logger Site ID] AS ls ON (l.temp = ls.temp) AND (l.loggerid = ls.loggerid) AND (l.Datetime = ls.datetime)
WHERE (((l.loggerid) Is Null));
UPDATE logID AS l INNER JOIN [Logger Site ID] AS ls ON (l.Datetime = ls.datetime) AND (l.temp = ls.temp) AND (l.loggerid = ls.loggerid) SET l.effortid = [ls].[effortid];
将EffortID从记录器站点ID更新为LogID

INSERT INTO logID ( [Datetime], loggerid, temp, effortid )
SELECT ls.datetime, ls.loggerid, ls.temp, ls.effortid
FROM logID AS l RIGHT JOIN [Logger Site ID] AS ls ON (l.temp = ls.temp) AND (l.loggerid = ls.loggerid) AND (l.Datetime = ls.datetime)
WHERE (((l.loggerid) Is Null));
UPDATE logID AS l INNER JOIN [Logger Site ID] AS ls ON (l.Datetime = ls.datetime) AND (l.temp = ls.temp) AND (l.loggerid = ls.loggerid) SET l.effortid = [ls].[effortid];

嘿,这太棒了。非常感谢!实际上,我正在尝试将logid.effortid添加到loggersiteid.effortid,包括那些空值。根据你的回答,我要胡闹一下,试着让这一切顺利进行。