Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/06/2005, 13:35
m4ltos
Invitado
 
Mensajes: n/a
Puntos:
Bueno por lo que veo creo que al enlazar 2 tablas dependientes de una que a su ves depende de otra se genera un doble enlace que multiplica por n filas de la ultima enlazada, y ahi empieza la bronca.

Total que opte por tomar los resultados y hacer una union con la tercera tabla usando una intermediaria heap o temporal.

Aqui dejo la solucion usando ANSII

Código:
drop table if exists views;
create table views TYPE=HEAP
select
 b.id_banner,
 sum(c.counter_view) as views,
 a.name_customer,
 b.url_banner
from
 nuke_customers_mb as a
inner join
 nuke_banners_mb as b
inner join
 nuke_views_mb as c
on
 a.id_customer = b.id_customer and
 b.id_banner = c.id_banner
group by
 b.id_banner
order by
 a.name_customer;

select
 a.id_banner,
 a.views,
 sum(b.counter_click) as clicks,
 a.name_customer,
 a.url_banner
from
 views a
inner join
 nuke_clicks_mb as b
on
 a.id_banner = b.id_banner
group by
 b.id_banner
;