The other day while working on a legacy Microsoft Access database I was reminded of how bizarre Access can be. When I ran the following query:
1 2 3 4 |
SELECT * FROM ([Authors] INNER JOIN [Publications] ON [Authors].id = Str([Publications].[authors].VALUE)) WHERE ( [Publications].[date] BETWEEN [Begin Date] AND [End Date] ) |
I received a peculiar error:
Microsoft Access
The SQL statement could not be executed because it contains ambiguous outer joins. To force one of the joins to be performed first, create a separate query that performs the first join and then include that query in your SQL statement.
The SQL statement could not be executed because it contains ambiguous outer joins. To force one of the joins to be performed first, create a separate query that performs the first join and then include that query in your SQL statement.
For a query with no outer joins, this was terribly unhelpful.
Continue reading