Ok, here's the thing. I have the Following tables involved :
> YEARS
------------------------------ 
ID    YEAR      ACTUAL
------------------------------ 
1     2014-15   TRUE 
2     2015-16   FALSE
> SHOPS
------------------------------ 
ID    NAME     ...
------------------------------ 
1     ThisShop ...
> ITA
------------------------------ 
ID    YEAR_ID   SHOP_ID
------------------------------ 
1     1         1 
2     1         2 
...
> INSPECTORS
------------------------------ 
ID    INSPECTOR
------------------------------ 
1     M. Black
2     M. White
3     M. Brown
...
> ITA_INSPECTORS
-------------------------------------------------------
ID    ID_ITA    ID_INSPCTR     StartDate    EndDate
-------------------------------------------------------
Here's the thing, I want a query to display ALL the INSPECTORS, listed or not in ITA_INSPECTORS for the SHOPS ID = 1 AND YEARS ID = 1.  If the inspector is present in the ITA_INSPECTORS table, show the Start and End dates, if not, show without the dates.  
Note that there might not be an ITA_ID in the ITA_INSPECTORS table for a selected shop (imagine the ITA_INSPECTORS table is empty, I wouls still need to view all of the INSPECTOR names).
The INSPECTORS table is static data to build the ITA_INSPECTORS table.
I have tried this query :
SELECT * FROM ((ITA 
INNER JOIN YEARS ON ITA.ID_YEAR = YEARS.ID)
LEFT JOIN ITA_INSPECTORS ON ITA.ID = ITA_INSPECTORS.ID_ITA)
RIGHT JOIN INSPECTORS ON ITA_INSPECTORS.ID_INSPCTR = INSPECTORS.ID
WHERE ITA.SHOP_ID = 1 AND ((YEARS.ACTUAL) = True);
It works until I add the RIGHT JOIN clause, then I get an error saying Join expression not supported.
Can anybody guide me to the proper way of doing this?
                        
Well one solution is to split the query so that it doesn't have these conflicting joins So create a query e.g q1
and then create a 2nd query to make the right join you need