MS Access: Update table with subqueries including multiple joins

Krishnaraj Rajagopal
1 min readJun 26, 2021

In order to update a table with data joined from other tables, use a query with following syntax

UPDATE ((Table1
INNER JOIN Table2 ON Table1.Column1 = Table2.Column)
INNER JOIN Table3 ON Table1.Column2 = Table3.Column)
SET Table1.Column3 = Table2/Table3.Column
WHERE Table2.Column = Table3.Column

A column from Table1 is updated with column from Table2 or Table3. Columns in Table1 is joined with Table2 and Table3 on columns in Table2 and Table3. Optionally, columns from Table2 and Table3 are compared with a WHERE clause. Additional Tables could be added to the join by adding the INNER JOIN line for each table added along with the appropriate parenthesis as indicated in bold.

Example:

UPDATE (([Assessment Result]
INNER JOIN Criteria
ON [Assessment Result].[Criteria ID] = [Criteria].[Criteria ID])
INNER JOIN [Assessment Roadmap]
ON [Assessment Result].[Assessment ID] = [Assessment Roadmap].[Assessment ID])
SET [Assessment Result].[Assessment Roadmap ID] = [Assessment Roadmap].[Assessment Roadmap ID]
WHERE [Assessment Roadmap].[Element ID]=[Criteria].[Element ID];

--

--