Sql 根据子查询数据更新表
我有一个从表中提取唯一记录的查询:Sql 根据子查询数据更新表,sql,ms-access,vba,Sql,Ms Access,Vba,我有一个从表中提取唯一记录的查询: SELECT First(t1.[Site Number]) AS [FirstOfSite Number], t1.[Customer Number], First(t1.Address1) AS FirstOfAddress1 FROM tblImport1 AS t1 GROUP BY t1.[Customer Number] ORDER BY t1.[Customer Number]; 我想根据上面的查询,通过链接字段t1.[Site Number]
SELECT First(t1.[Site Number]) AS [FirstOfSite Number], t1.[Customer Number], First(t1.Address1) AS FirstOfAddress1
FROM tblImport1 AS t1
GROUP BY t1.[Customer Number]
ORDER BY t1.[Customer Number];
我想根据上面的查询,通过链接字段t1.[Site Number]和tbliport.[Site Number]来更新第二个表,比如tbliport
我提出了以下问题:
UPDATE tblimport
INNER JOIN tblimport on [tblimport].[site number]=[t1].[site number]
(SELECT First(t1.[Site Number]) AS [FirstOfSite Number], t1.[Customer Number], First(t1.Address1) AS FirstOfAddress1
FROM tblImport1 AS t1
GROUP BY t1.[Customer Number])
set tblimport.address1=t1.address1
然而,我得到语法错误。我哪里出了问题
编辑
我阅读并修改了以下问题:
UPDATE D
set D.address1=t1.address1
FROM tblimport as D
INNER JOIN (SELECT First(t1.[Site Number]) AS [FirstOfSite Number], t1.[Customer Number], First(t1.Address1) AS FirstOfAddress1 FROM tblImport1 AS t1 GROUP BY t1.[Customer Number])
ON t1.[Site Number]=D.[Site Number]
但是我仍然有语法错误。请查看语法中的正确更新。您的查询格式非常不正确:您使用iteself内部连接一个表,但没有给每个表指定别名。在连接条件中,您引用了一个表,该表只有在脚本后面才会被知道。子选择只是在无处的中间,它可能应该放置在第二个TBLIVIST加入的地方。我刚刚修改了相应的查询,但是我仍然有语法错误。试着在内部连接中的SELECT语句中给出您的SELECT语句,在ON语句中使用别名并调用集合中的正确字段:内部连接选择Firstt1。[站点号]作为[FirstOfSite Number],t1。[客户号],Firstt1.Address1作为tblImport1中的FirstOfAddress1作为t1组,t1作为t1组。[客户号]作为Q上的Q。[站点号]=D。[站点号]-并在集合中使用:set D.Address1=Q.firstOfAddress1查看语法中的正确更新。您的查询格式非常不正确:您使用iteself内部连接一个表,但没有给每个表指定别名。在连接条件中,您引用了一个表,该表只有在脚本后面才会被知道。子选择只是在无处的中间,它可能应该放置在第二个TBLIVIST加入的地方。我刚刚修改了相应的查询,但是我仍然有语法错误。试着在内部连接中的SELECT语句中给出您的SELECT语句,在ON语句中使用别名并调用集合中的正确字段:内部连接选择Firstt1。[站点号]作为[FirstOfSite Number],t1。[客户号],Firstt1.Address1作为tblImport1中的FirstOfAddress1作为t1组,t1作为t1组。[客户号]作为Q上的Q。[站点号]=D。[站点号]-在您的集合中使用:set D.Address1=Q.FirstOFAddress1