Salam to Guros I am facing the problem in query building. Kindly help ASAP There are three tables SQL> DESC HRMPMSPRTAXRULE Name Null? Type ------------------------------- -------- ---- PRTAXRULE NOT NULL NUMBER [PK] PRPROC NUMBER CO VARCHAR2(3) PRA NUMBER PRACALPERIOD NUMBER TAXRULENO VARCHAR2(10) FORMULA VARCHAR2(4000) DESCR VARCHAR2(200) TAXCALBASE VARCHAR2(1) FAGE NUMBER TAGE NUMBER GENDER VARCHAR2(1) BIFURTAXSAL VARCHAR2(1) TAXCALMETHOD VARCHAR2(1) STATUS VARCHAR2(1) SQL> DESC HRMPMSPRTAXCAL Name Null? Type ------------------------------- -------- ---- PRTAXCAL NOT NULL NUMBER [PK] PRTAXCALNO VARCHAR2(10) PRTAXRULE NUMBER SALMIN NUMBER SALMAX NUMBER PERT NUMBER CATE VARCHAR2(1) SQL> DESC HRMPMSPREMPTAXCAL_w Name Null? Type ------------------------------- -------- ---- PREMPTAXCAL_W NOT NULL NUMBER [PK] PREMPTAXRTHRES_W NUMBER PREMPTAXEXEMPT_W NUMBER PRTAXCAL NUMBER TAXABLEAMT NUMBER PERT NUMBER EMPTAXCALAMT NUMBER CFEMPTAXCALAMT NUMBER REMAINTAXABLEAMT NUMBER CATE VARCHAR2(1) PRTAXRULE NUMBER PRPROC NUMBER PRPROCEMPLST NUMBER ================================================================ SQL> SELECT * FROM HRMPMSPRTAXRULE; PRTAXRULE PRPROC CO PRA PRACALPERIOD TAXRULENO ---------- ---------- --- ---------- ------------ ---------- 1 3 100 1 17 TAX-2005 2 3 100 1 17 TAX-2006 SQL> SELECT * FROM HRMPMSPRTAXCAL; PRTAXCAL PRTAXCALNO PRTAXRULE SALMIN SALMAX PERT C ---------- ---------- ---------- ---------- ---------- ---------- - 1 1 1 1 3000 2 C 2 5 1 5001 6000 2 R 3 2 1 3001 4000 4 C 4 3 1 4001 5000 6 C 5 4 1 5001 6000 8 C 6 5 1 6001 7000 10 C 7 1 1 1 2000 10 R 8 2 1 2001 3000 8 R 9 3 1 3001 4000 6 R 10 4 1 4001 5000 4 R 11 1 2 1 3000 5 C 12 2 2 3001 4000 7 C 13 3 2 4001 5000 9 C 14 4 2 5001 7000 11 C 15 5 2 7001 90000 13 C 16 1 2 1 3000 13 R 17 2 2 3001 4000 9 R PRTAXCAL PRTAXCALNO PRTAXRULE SALMIN SALMAX PERT C ---------- ---------- ---------- ---------- ---------- ---------- - 18 3 2 4001 6000 7 R 19 4 2 6001 7000 5 R 20 5 2 7001 8000 3 R 21 6 2 8001 90000 2 R 21 rows selected. PREMPTAXCAL_W PREMPTAXRTHRES_W PREMPTAXEXEMPT_W PRTAXCAL TAXABLEAMT PERT EMPTAXCALAMT CFEMPTAXCALAMT REMAINTAXABLEAMT C PRTAXRULE PRPROC PRPROCEMPLST ------------- ---------------- ---------------- ---------- ---------- ---------- ------------ -------------- ---------------- - ---------- ---------- ------------ 1 1 1 1 3000 2 60 60 407.64 C 1 3 1 2 1 1 3 407.64 4 16.3056 76.3056 0 C 1 3 1 3 2 3 15 24807.54 13 3224.9802 3224.9802 0 C 2 3 1 4 2 3 21 3224.9802 2 64.499604 64.499604 0 R 2 3 1 5 3 4 1 3000 2 60 60 5403.588 C 1 3 2 6 3 4 3 4000 4 160 220 1403.588 C 1 3 2 7 3 4 4 1403.588 6 84.21528 304.21528 0 C 1 3 2 8 4 6 15 22558.418 13 2932.59434 2932.59434 0 C 2 3 2 9 4 6 21 2932.59434 2 58.6518868 58.6518868 0 R 2 3 2 =================================== Result should be combination of upper three table where clause based on JOINS WILL BE HRMPMSPREMPTAXCAL.TAXRULE = HRMPMSPRTAXRULE.TAXRULE AND HRMPMSPREMPTAXCAL_W.PRTAXCAL = HRMPMSPRTAXCAL.PRTAXCAL CATE = 'C' PRPROC = 3 PRPROCEMPLST = 1 PRTAXRULE = 1 PRPROC PRPROCEMPLST PRTAXRULE SALMIN SALMAX TAXABLEAMT EMPTAXCALAMT ------- ------------ ---------- ---------- ---------- ---------- ------------ 3 1 1 1 3000 3000 60 3 1 1 3001 4000 407.64 16.3056 3 1 1 4001 5000 3 1 1 5001 6000 3 1 1 6001 7000