Всем привет. Помогите пожалуйста с запросом. Итак имеем
CREATE TABLE T2
(
SZ NUMBER(4),ID_R NUMBER(4), P1 NUMBER(4), P2 NUMBER(4), P3 NUMBER(4), P4 NUMBER(4)
);
insert into T2 (sz,ID_R,p1,p2,p3,p4) values (1,3,55,66,0,0);
insert into T2 (sz,ID_R,p1,p2,p3,p4) values (2,3,0,0,41,17);
insert into T2 (sz,ID_R,p1,p2,p3,p4) values (1,4,22,33,0,0);
insert into T2 (sz,ID_R,p1,p2,p3,p4) values (2,4,0,0,38,54);
insert into T2 (sz,ID_R,p1,p2,p3,p4) values (2,5,0,0,52,35);
commit;
SELECT * FROM T2 order by SZ, ID_R;
SZ ID_R P1 P2 P3 P4
---------- ---------- ---------- ---------- ---------- ----------
1 3 55 66 0 0
1 4 22 33 0 0
2 3 0 0 41 17
2 4 0 0 38 54
2 5 0 0 52 35
теперь мне надо получить выборку по принципу: если совпадают ID_R и SZ разные,то получить результат вот такого вида
ID_R P1 P2 P3 P4
---------- ---------- ---------- ---------- ----------
3 55 66 41 17
4 22 33 38 54
что реализуесться следующим запросом
SELECT F1.ID_R,F1.P1,F1.P2, F2.P3,F2.P4
FROM T2 F1, T2 F2
WHERE F1.SZ = 1 AND F2.SZ = 2
AND F1.ID_R = F2.ID_R;
но здесь не попадает в выборку значения, где ID_R = 5, т.к.нет SZ = 1
а вот как написать запрос, чтобы он возвращал запрос примерно такого вида
ID_R P1 P2 P3 P4
---------- ---------- ---------- ---------- ----------
3 55 66 41 17
4 22 33 38 54
5 0 0 52 35
а вот как это реализовать не получаеться. Помогите написать правильно.