# This is untested. Test on sample data that # doesn't matter before using on live data. my %represented = map{$_=>1} @test; my $sth = $dbh->prepare("SELECT Name FROM tnt"); my $del=$dbh->prepare("DELETE FROM tnt WHERE Name=?"); $sth->execute(); while (my $line = $sth->fetchrow_hashref()) { if (not $represented{$$line{Name}}) { $del->execute($$line{Name}); } }