There isn't a general-purpose thing for finding the difference between two query results. For all we know those queries were based on completely unrelated tables. However if it's a more well-conditioned problem, for example the two queries are related in some way, then it's possible that there could be a variation of query #2 which returns the desired result.
Like the previous poster said, giving your queries would be helpful. I didn't test the syntax, but in sybase a correlated subquery would return anything from one table that doesn't exist in another. You can also use 'not in' instead of 'not exists', however at least in the old days 'not exists' was faster due to its use of indexes.
select * from tablea a where not exists (select * from tableb b where a.key=b.key)