Home » SQL & PL/SQL » SQL & PL/SQL » joining
joining [message #9167] |
Fri, 24 October 2003 04:33 |
jseven
Messages: 28 Registered: October 2003
|
Junior Member |
|
|
Hi all,
I am having a tables like reftable(primary data),sourcetable(secondary data).
The data is as following..
REFTABLE
-------
RNO RNAME RCATNO
1 PENS 10
2 PADS 20
3 BOOKS 30
4 PENCILS 40
6 RUBBERS 60
SOURCETABLE
-----------
SNO SNAME SCATNO
1 RAM 10
2 SHIRTS 21
3 MOUSE 30
5 TOYS 50
6 RUBBERS 60
output should be
1 PENS 10(RNO,SNO and RCATNO,SCATNO matched
so primary table data)
2 SHIRTS 21(RNO,SNO matched but RCATNO,SCATNO not
matched. So, secondary table data).
3 BOOKS 30(RNO,SNO and RCATNO,SCATNO matched. So
Primary table data)
4th record is not there in secondary table,so that should not be displayed.
5 TOYS 50 (must be from secondary table data
though it is not existing in primary
table)
6 RUBBERS 60.
Can anybody help me to solve this problem?
Thanks in advance.
ganesh
|
|
|
Re: joining [message #9171 is a reply to message #9167] |
Fri, 24 October 2003 08:01 |
Art Metzer
Messages: 2480 Registered: December 2002
|
Senior Member |
|
|
SQL> CREATE TABLE reftable (rno NUMBER, rname VARCHAR2(8), rcatno NUMBER);
Table created.
SQL> INSERT INTO reftable VALUES (1,'PENS',10);
SQL> INSERT INTO reftable VALUES (2,'PADS',20);
SQL> INSERT INTO reftable VALUES (3,'BOOKS',30);
SQL> INSERT INTO reftable VALUES (4,'PENCILS',40);
SQL> INSERT INTO reftable VALUES (6,'RUBBERS',60);
SQL> CREATE TABLE sourcetable (sno NUMBER, sname VARCHAR2(8), scatno NUMBER);
Table created.
SQL> INSERT INTO sourcetable VALUES (1,'RAM',10);
SQL> INSERT INTO sourcetable VALUES (2,'SHIRTS',21);
SQL> INSERT INTO sourcetable VALUES (3,'MOUSE',30);
SQL> INSERT INTO sourcetable VALUES (5,'TOYS',50);
SQL> INSERT INTO sourcetable VALUES (6,'RUBBERS',60);
SQL> COMMIT;
Commit complete.
SQL> SELECT s.sno
2 , DECODE(NVL(r.rno,s.sno)
3 , s.sno
4 , DECODE(r.rcatno
5 , s.scatno, r.rname
6 , s.sname)) name
7 , s.scatno
8 FROM reftable r
9 , sourcetable s
10 WHERE s.sno = r.rno (+)
11 /
SNO NAME SCATNO
---------- -------- ----------
1 PENS 10
2 SHIRTS 21
3 BOOKS 30
5 TOYS 50
6 RUBBERS 60
SQL> HTH,
A.
|
|
|
Goto Forum:
Current Time: Tue Apr 23 05:08:20 CDT 2024
|