It's not clear from your question or the code you have posted what you are trying to do.
My best guess is that you want to fetch records from table1 where there is no reference for them in Table2.
If so then you should use something like:
Code:
SELECT * FROM Table1 WHERE Id NOT IN (SELECT table1ID From Table2 )
This can be implemented using FieldCompareSetPredicate passing "true" for the negate parameter.