Ok. i see now. then you need something like thisif SQL 2005:-SELECT G1.A, G1.B, G1.C,G1.D,G2.DFROM(SELECT ROW_NUMBER() OVER(PARTITION BY A, B, C ORDER BY D) AS RowNo,A,B,C,DFROM table1 )G1INNER JOIN (SELECT ROW_NUMBER() OVER(PARTITION BY A, B, C ORDER BY D) AS RowNo,A,B,C,DFROM table2)G2ON G2.A = G1.Aand G2.B = G1.Band G2.C = G1.CAND G2.RowNo=G1.RowNo
If sql 2000:-SELECT G1.A, G1.B, G1.C,G1.D,G2.DFROM(SELECT (SELECT COUNT(*) + 1 FROM table1 WHERE A=t1.A AND B=t1.B AND C=t1.C AND D < t1.D) AS RowNo,A,B,C,DFROM table1 t1)G1INNER JOIN (SELECT (SELECT COUNT(*) + 1 FROM table2 WHERE A=t2.A AND B=t2.B AND C=t2.C AND D < t2.D) AS RowNo,A,B,C,DFROM table2 t2)G2ON G2.A = G1.Aand G2.B = G1.Band G2.C = G1.CAND G2.RowNo=G1.RowNo
please make your requirement clear with some sample data in future for getting quick solutions. Cheers.