Yo creo que es porque estás haciendo mal la join. No sé porqué metes otra select.
Prueba esto. Debes tener la tabla días con 31 registros.
Código SQL
[-]
Select D.DIA, sum(R.Kgs) from Dias D
left join Recepcion R on D.dia=extract(day from R.fecha)
group by D.dia
Luego nos comentas.
Saludos