Witam, wiem że nie zbyt trafnie sformułowałam temat, ale zabrakło pomysłów.
Problem dotyczy kontaktów
tabela dziennik
id | rok_u | profilid | klasaid | nazwisko | imie |userid
1 1 1 1 x x 8
2 2 2 2 x x 9
3 3 3 3 x x 4
tabela friends
id | userid | friendid | status | data
1 8 9 0 0
2 4 8 0 0
Zapytanie ma wyświetlać kontakty, których jeszcze nie zaproszono do grona znajomych
SELECT
d.userid AS d_userid,
f.userid AS f_userid,
f.friendid AS f_friendid,
f2.userid AS f2_userid,
f2.friendid AS f2_friendid
FROM `dziennik` d
LEFT JOIN friends f ON d.userid=f.userid
LEFT JOIN friends f2 ON d.userid=f2.friendid
WHERE d.userid!=0 && d.userid!='8' && !(d.rok_u='2012' && d.profilid='9' && d.klasaid='1')
&&
!((d.userid=f.userid || d.userid=f.friendid) || (d.userid=f2.userid || d.userid=f2.friendid)) ////////-----------no i toto jak jest bez ! to wyświetla mi tylko te kontakty które się już zaprosiły, więc dodanie ! powinno wyświetlać wszystko oprócz tych, a zwraca 0 wyników-------------///////
ORDER BY d.userid DESC