Hi
deep and abject apologies if I ramble on but I am as usual confused.
Have a query based on a three tables (tbl deceased, tbljoin and tbl memorial) that when run does not show all records. I realised that Not all records in tbl memorials have matching entries in tbl join.
The relationship is

Courtesy of the forum I found right clicking on the join of a query gave me three options.
My original query is below and is I think an inner join only showing matching records
Code:
SELECT tblDeceased.GraveID, tblDeceased.Mlink, tblDeceased.Plot, tblDeceased.GraveNo, tblDeceased.Forenames, tblDeceased.Surname, tblDeceased.Age, tblDeceased.DayOfDeath, tblDeceased.MonthOfDeath, tblDeceased.YearOfDeath, tblDeceased.DayOfBurial, tblDeceased.MonthOfBurial, tblDeceased.YearOfBurial, tblDeceased.Inscription AS tblDeceased_Inscription, tblDeceased.pp, tblDeceased.Notes, tblDeceased.Links, tblDeceased.map, tblDeceased.notes_2, [tblDeceased]![Notes] & " " & [tblDeceased]![notes_2] AS [Complete Notes], tblDeceased.pdfMap, tblDeceased.GraveNotes, CDate([DayOfBurial] & "/" & [MonthOfBurial] & "/" & [YearOfBurial]) AS FullDateofBurial, CDate([DayOfDeath] & "/" & [MonthOfDeath] & "/" & [YearOfDeath]) AS FullDateofDeath, tblMemorial.Mlink, tblMemorial.Inscription
FROM tblMemorial INNER JOIN (tblDeceased INNER JOIN tblJoin ON tblDeceased.GraveID = tblJoin.fkGraveID) ON tblMemorial.MemorialID = tblJoin.fkMemorialId
ORDER BY tblDeceased.Forenames;
So I selected option two in the join between tbljoin and tbl memorial so that "All records from tbl memorial are included and only those from tbljoin where the joined fields are equal
Code:
SELECT tblDeceased.GraveID, tblDeceased.Mlink, tblDeceased.Plot, tblDeceased.GraveNo, tblDeceased.Forenames, tblDeceased.Surname, tblDeceased.Age, tblDeceased.DayOfDeath, tblDeceased.MonthOfDeath, tblDeceased.YearOfDeath, tblDeceased.DayOfBurial, tblDeceased.MonthOfBurial, tblDeceased.YearOfBurial, tblDeceased.Inscription AS tblDeceased_Inscription, tblDeceased.pp, tblDeceased.Notes, tblDeceased.Links, tblDeceased.map, tblDeceased.notes_2, [tblDeceased]![Notes] & " " & [tblDeceased]![notes_2] AS [Complete Notes], tblDeceased.pdfMap, tblDeceased.GraveNotes, CDate([DayOfBurial] & "/" & [MonthOfBurial] & "/" & [YearOfBurial]) AS FullDateofBurial, CDate([DayOfDeath] & "/" & [MonthOfDeath] & "/" & [YearOfDeath]) AS FullDateofDeath, tblMemorial.Mlink, tblMemorial.Inscription
FROM tblMemorial LEFT JOIN (tblDeceased INNER JOIN tblJoin ON tblDeceased.GraveID = tblJoin.fkGraveID) ON tblMemorial.MemorialID = tblJoin.fkMemorialId
ORDER BY tblDeceased.Forenames;
My logic was that this woud show me all records from the tbl memorials
However I get an error that cofused me about inner and outer joins
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.
I've searched google and it seems to be a common error but I can't find a solution
thanks
Ian