Sejauh yang saya tahu tidak ada gabungan luar penuh di MySql. Jadi, untuk melakukan apa yang Anda perlukan, Anda harus mendapatkan ID yang berbeda di tabel turunan dan bergabung dengan tabel asli:
select ids.id,
ifnull(table1.A, 0) A,
ifnull(table2.B, 0) B,
ifnull(table3.C, 0) C,
ifnull(table1.A, 0) + ifnull(table2.B, 0) - ifnull(table3.C, 0) R
from
(
select id
from table1
union
select id
from table2
union
select id
from table3
) ids
left join table1
on ids.id = table1.id
left join table2
on ids.id = table2.id
left join table3
on ids.id = table3.id