Lets say I have a table dataContext.Customer with the following fields
FName varchar
LName varchar
Phone varchar
DOB datetime
May be what i might do is, first ill get the records from DB having first name compared with the array item i have.
Once i get the the subset of the table data (assuming that the structure of DB table is same and the array structure as well meaning that array[0] is always first name), then i search for what ever pattern i am looking for in the memory.
I am sure this is not the exactly solution your hoping for. But lemme think further, mean while i am open for more ideas folks :)