use warnings; use strict; my (@results, @final, %seen); while(<>){ tr/\0//d; # strip NULs # if we're INSERTing into Photo (but not from)... if (/(?[1] cmp $b->[1] } @results; open OUT, ">results.txt" or die $!; for my $line (@final) { my $fieldNames = $line->[1]; # if we've never seen these values, print if (not $seen{$fieldNames}) { print OUT @$line; $seen{$fieldName}++; } } close OUT;