Código SQL
[-]CREATE TABLE DIAS (
DIA INTEGER);
INSERT INTO DIAS (DIA)
VALUES (1);
INSERT INTO DIAS (DIA)
VALUES (2);
INSERT INTO DIAS (DIA)
VALUES (3);
INSERT INTO DIAS (DIA)
VALUES (4);
INSERT INTO DIAS (DIA)
VALUES (5);
INSERT INTO DIAS (DIA)
VALUES (6);
INSERT INTO DIAS (DIA)
VALUES (7);
INSERT INTO DIAS (DIA)
VALUES (8);
INSERT INTO DIAS (DIA)
VALUES (9);
INSERT INTO DIAS (DIA)
VALUES (10);
COMMIT WORK;
CREATE TABLE RECEPCION (
FECHA DATE,
KGS INTEGER);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-01', 1);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-01', 1);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-02', 3);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-04', 4);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-04', 4);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-06', 6);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-06', 6);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-08', 8);
INSERT INTO RECEPCION (FECHA, KGS)
VALUES ('2011-01-09', 9);
COMMIT WORK;
Aplico :
Código Delphi
[-]Select D.DIA, RM.SUMA from Dias D
left join (Select extract(day from fecha) as dia,
sum(kgs) as suma
from Recepcion
group by dia ) as RM
on D.DIA = RM.DIA
y el resultado que obtengo es :
Código SQL
[-]DIA SUMA
1 2
2 3
3 Null
4 8
5 Null
6 12
7 Null
8 8
9 9
10 Null