SELECT R.Cid, R.Mid, R.Oid, B.bname1, B.bname2 FROM RTable R INNER JOIN WTable W ON R.ID = W.RID INNER JOIN BTable B ON W.ID = B.ID UNION ALL SELECT R2.Cid, R2.Mid, R2.Oid, A.Aname, NULL FROM ATable A, (SELECT R.ID, R.Cid, R.Mid, R.Oid, W.RID FROM RTable R LEFT JOIN WTable W ON R.ID = W.RID) R2 WHERE A.ID = R2.ID AND R2.RID IS NULL
SELECT R.Cid, R.Mid, R.Oid, B.bname1, B.bname2
FROM RTable R INNER JOIN WTable W ON R.ID = W.RID
INNER JOIN BTable B ON W.ID = B.ID
UNION ALL
SELECT R2.Cid, R2.Mid, R2.Oid, A.Aname, NULL
FROM ATable A,
(SELECT R.ID, R.Cid, R.Mid, R.Oid, W.RID
FROM RTable R LEFT JOIN WTable W ON R.ID = W.RID) R2
WHERE A.ID = R2.ID AND R2.RID IS NULL