Here is an updated answer following the conversation with OP:-
SELECT username
FROM (
SELECT username FROM users
UNION
SELECT you FROM friends
UNION
SELECT friend FROM friends
) everybody
WHERE everybody.`username` != 'user1'
Substitute the username being test in the final string.
The UNION does a DISTINCT by default, removing any extra results.
====================== original answer from here ======================
I don't understand your question - but this may give you an idea of where to start...
SELECT username
FROM users
WHERE username NOT IN (
SELECT you
FROM friends
UNION
SELECT friend
FROM friends
)
This is probably more efficient, especially if indexes exist to cover the EXISTS:-
SELECT u.username
FROM users u
WHERE NOT EXISTS (
SELECT *
FROM friends f
WHERE (f.you=u.username OR f.friend=u.username)
)