Se eu entendi a pergunta, que para ser honesto eu não entendo, você está procurando um sindicato?
select a,b,c,0 as e,0 as f, test,data from table1
union
select a,b,c,e,f, test,data from table2
union
select a,b,c,0 as e,0 as f, test,data from table3
editar incluído e e f
editar2 Você precisará adicionar a cláusula where antes de cada união
select a,b,c,0 as e,0 as f, test,data from table1
where test= 1 and data =1 and id =0
union
select a,b,c,e,f, test,data from table2
where test= 1 and data =1 and id =0
union
select a,b,c,0 as e,0 as f, test,data from table3
where test= 1 and data =1 and id =0