use strict ; use warnings ; # Test script to put all data next to each other from two tables and apply some filters (Similar to how a join would do that) # data from perlmonks: 1216134 my @d1 = ( ['02',29031990,'feb',21,5], ['02',29031990,'feb',18,5], ['02',29031990,'feb',20,5], ['02',29031990,'feb',21,5] ) ; my @d2 = ( ['Unit4874',29031990,'02',4], ['Unit4875',29031990,'02',3], ['Unit4876',29031990,'02',2], ['Unit4877',29031990,'02',1], ['Unit4878',29031990,'02',0] ) ; for ( my $i = 0 ; $i < 4 ; ++$i ) { my @d1d = @{$d1[$i]} ; for ( my $j = 0 ; $j < 5 ; ++$j ) { my @d2d = @{$d2[$j]} ; if ( ($i + 1) == $d2d[3] ) { print( ($i + 1) . ",@d1d,\t\t" . ($j + 1) . ",@d2d\n" ) ; } if ( $d1d[4] - ( $i + 1 ) == 1 ) { # WHERE (TABLE A.COL5 - COUNTER_A = 1) AND (TABLE A.COL5 = COUNTER_B): # if ( ( $d1d[4] - ( $i + 1 ) == 1 ) && ( $d1d[4] == ( $j + 1 ) ) ) { print( ($i + 1) . ",@d1d,\t\t" . ($j + 1) . ",@d2d (x)\n" ) ; } } } __END__ 1,02 29031990 feb 21 5, 4,Unit4877 29031990 02 1 2,02 29031990 feb 18 5, 3,Unit4876 29031990 02 2 3,02 29031990 feb 20 5, 2,Unit4875 29031990 02 3 4,02 29031990 feb 21 5, 1,Unit4874 29031990 02 4 4,02 29031990 feb 21 5, 1,Unit4874 29031990 02 4 (x) 4,02 29031990 feb 21 5, 2,Unit4875 29031990 02 3 (x) 4,02 29031990 feb 21 5, 3,Unit4876 29031990 02 2 (x) 4,02 29031990 feb 21 5, 4,Unit4877 29031990 02 1 (x) 4,02 29031990 feb 21 5, 5,Unit4878 29031990 02 0 (x)