Salvo sviste è così

codice:
select tecnico,sum(costo),periodo from (
	select tecnico,sum(costo) as costo,date_format(`data`,"%Y-%m") as periodo 
	from tabella where tecnico is not null 
	group by tecnico,periodo
	union 
	select tecnico2,sum(costo2),date_format(`data`,"%Y-%m") as periodo
	from tabella where tecnico2 is not null 
	group by tecnico2,periodo) as tab
	group by tecnico,periodo
	order by tecnico,periodo