Я уже сделать онлайн статус пользователя только для друзейMySQL: Пользователь Статус онлайн [HELP]
SELECT * FROM users
WHERE
(id_user IN
(SELECT CASE
WHEN friend_one = '{$id}'
THEN friend_two
WHEN friend_two = '{$id}'
THEN friend_one
END
FROM friends
WHERE status = '1')
) AND (status = '1' OR ($date - last_login) <= 300)
И это работает, это MySQL только показать список друзей войти в состояние.
Но проблема в том, что я пытаюсь сделать другой статус входа в систему, который отображает только список других людей, которые вошли в систему, но не в нашем списке друзей.
SELECT * FROM users
WHERE
(id_user NOT IN
(SELECT CASE
WHEN friend_one = '{$id}'
THEN friend_two
WHEN friend_two = '{$id}'
THEN friend_one
END
FROM friends
WHERE status = '1')
) AND (status = '1' OR ($date - last_login) <= 300)
Так это результат я хочу
Logged as: khrisna
Friend list: Ben, Alpha, Ralph
All User: Ben, Alpha, John, Mark, Zayn
Online friend list: Ben, Alpha
Another online user: John, Mark, Zayn
Может кто-нибудь помочь мне достичь результата я хочу?
ОБНОВЛЕНИЕ
users
стол
friends
стол
Я хочу сделать что-то вроде этого результата
Интернет пользователь: Khrisna Gunanasurya // logined счета
Список друзей онлайн: Альфа, Джон // друзья онлайн из logined счета
Другой пользователь онлайн: Mark, Ralph // другой пользователь, который зарегистрировался, а не друг логин-аккаунта
Просьба представить схему таблицы, выборочные данные и желаемый результат в табличной форме – peterm
Добавлена table –