On 6/24/2014 2:49 PM, Bob Cronin wrote: > I want to keep only those primary stream records for which ALL the > mail-serverN names listed on that record are found in the secondary stream.
So, you want to discard records for which ANY name is NOT found. SPLIT the names, LOOKUP to find the bad ones, and PREDSELECT to toss the bad record. Feed another copy of the original to input 2 of PREDSELECT to trigger the good records to go to output 1. (end /) ... | dup: fanout | notfound: predselect | ... (bad recs here) / dup: | not chop blank | split | found: lookup / ... (server list here) | found: | notfound: | ... (good recs here) / dup: | notfound: If this is something that'll be running forever and you're being extra picky about performance, you can use the primary output of CHOP 0 to avoid the cost of the extra copy from FANOUT: (end /) ... | next: not chop 0 | dup: fanout | notfound: predselect | ... (bad recs here) / dup: | not chop blank | split | found: lookup / ... (server list here) | found: | notfound: | ... (good recs here) / next: | strliteral append | notfound: ¬R
