mmm no es muy eficiente esa select, ten en cuenta que ejecutas 1 o varias consultas por cada campo que tengas en TABLA.
prueba algo del tipo:
Código:
select tipo, sum(productoA), sum(productoB), ....
from tabla
left join tablaunirL on tabla.fk = tablaunir.id
where condificion
group by tipo
Un saludo