【发布时间】:2020-06-23 14:00:49
【问题描述】:
我正在尝试从 tblIMPORT 记录更新 tblMAIN 记录。 tblIMPORT 上的数据需要从其他表中提取引用以匹配 tblMAIN 上的实际预期记录。其他表是 tblEMPLOYEES 和 tblTAXRATES。我们尝试通过 SQL 查询来完成它,但似乎我们不能完全正确地获取查询。我们都不知道如何正确构建它,因为帮助我的人是 webdev 并且使用 MySQL,他的查询与 MS Access 所期望的不太一样。
tblIMPORT 上的导入数据与 tblMAIN 的信息并不完全相同,因此必须参考 tblEMPLOYEES 和 tblTAXRATES 才能找到匹配的信息,例如:
- tblIMPORT 具有 [EmpID],它相当于 tblEMPLOYEES 上的 [SeqNumID],我们需要在其中提取 tblMAIN 中需要的 [Employee Name]。
- 同样,tblIMPORT 只有 [TaxRegion],但我们需要将其与 tblMAIN 所需的 tblTAXRATES 上相应的 [GST percent]、[PST percent]、[HST percent] 和 [IsCompound] 对齐。
这是我们写的:
' Update Main Entry Table from Imported Content
DoCmd.RunSQL "UPDATE tblMAIN t " & _
"INNER JOIN tblIMPORT x ON x.[IsDeleted] IS NULL AND x.[EntryID] = t.[EntryID] " & _
"LEFT JOIN tblEMPLOYEES e ON x.[EmpID] = e.[SeqNumID] " & _
"LEFT JOIN tblTAXRATES r ON x.[TaxRegion] = r.[TaxRegion] " & _
"SET t.[Employee Name] = e.[Employee Name],t.[TaxRegion] = x.[TaxRegion],t.[EntryID] = x.[EntryID],t.[EntryDate] = x.[EntryDate],t.[GST percent] = r.[GST percent],t.[PST percent] = r.[PST percent],t.[HST percent] = r.[HST percent],t.[IsCompound] = r.[IsCompound];"
【问题讨论】: