Ver Mensaje Individual
  #18  
Antiguo 22-03-2011
PacoPepe PacoPepe is offline
Miembro
 
Registrado: ene 2006
Ubicación: Córdoba, España
Posts: 86
Reputación: 19
PacoPepe Va por buen camino
Red face

Quedaría así, probando a partir de un dia concreto

Código SQL [-]
 select sum(r.kgs), aid.out_date from AUTO_INC_DAY('10/10/2010', 100) AID
 left join recepcion r on r.fecha > AID.OUT_DATE and r.fecha <= AID.OUT_DATE +1
 where r.ano = 2010
 group by aid.out_date

Pero da el mismo resultado que con mi consulta original

Código SQL [-]
select d.dia, rm.suma from dias d
left join
(select extract(day from fecha) as dia, extract(month from fecha) as mes, sum(kgs) as suma
           from RECEPCION
where ano = 2010
group by dia, mes ) as rm  on d.iddia = rm.dia
where rm.mes = 12

El problema es que cuando encuentra un dia en que no hay Recepción, por ejemplo un domingo, no aparece el valor 0 para ese día, sino que no aparece nada, es decir, no evalua SUM cuando encuentra NULL.

Aunque lo que no entiendo es porque no funciona el LEFT JOIN, si en la tabla de la izquierda aparece un valor, por ejemplo el dia 1, debería aparecer el día 1 en el resultado, aunque en la tabla de la derecha no exista el día 1

Un saludo
Responder Con Cita