Well this is how I implemented it in Microsoft Access, the mySQL should be fairly easy to adapt.
This relies on you having two tables called table1 and table2. This could probably be adapted to use more than two tables, but I only had a need for two when I wrote it.
It also needs both tables to have a columns called code (this is the data is compares to determine what to join)
qLeftOuterJoin:
SELECT Table1.Code AS TheCode, Table1., Table2.
FROM Table1 LEFT JOIN Table2 ON Table1.Code=Table2.Code;
qRestrictedOuterJoin:
SELECT Table2.Code AS TheCode, Table1., Table2.
FROM Table1 RIGHT JOIN Table2 ON Table1.Code=Table2.Code
WHERE (((Table1.Code) Is Null));
qSimulatedFullOuterJoin
SELECT [qLeftOuterJoin].TheCode,[qLeftOuterJoin].
FROM [qLeftOuterJoin]
UNION SELECT [qRestrictedRightOuterJoin].TheCode,[qRestrictedRightOuterJoin].
FROM [qRestrictedRightOuterJoin];
If anyone has any suggestions/improvements on this code please post them here.
AUTOMATA.