2011-11-23 2 views
0

Voilà à peu près la question, comment puis-je obtenir les amis de l'utilisateur qui ne figurent sur aucune des listes d'amis de l'utilisateur?Trouver des amis Facebook pas sur les listes d'amis

Cela me reçoit tous ceux qui sont sur une liste:

uid SELECT, last_name, nom, CURRENT_LOCATION de l'utilisateur OU uid DANS (SELECT UID2 d'un ami OÙ UID1 me =() ET UID2 IN (SELECT uid DE friendlist_member OÙ FLID IN (SELECT Flid DE friendlist OU propriétaire moi =() et type = "user_created"))) ORDER BY last_name LIMIT 0,10

Mais cela me fait rien:

uid SELECT, last_name, nom, CURRENT_LOCATION de l'utilisateur OU uid DANS (SELECT UID2 d'un ami OÙ UID1 me =() ET UID2 NOT IN (SELECT uid DE friendlist_member OU FLID IN (SELECT Flid DE friendlist Cas où le propriétaire = moi() et type = "user_created"))) ORDER BY last_name LIMITE 0,10

on dirait que chaque fois que j'inclure une clause de "NOT IN (...)", un ensemble vide est retourné .

+0

Peut 'friendlist_member.uid' être' null'? –

Répondre

0

L'expression NOT IN (a, b, ..., n) renvoie NULL si l'une des valeurs a, b, ..., n est NULL. Si uid peut être essayer null ajouter une condition supplémentaire à la clause WHERE dans votre intérieur sélectionnez pour supprimer les valeurs NULL:

SELECT uid 
FROM friendlist_member 
WHERE flid IN (SELECT flid FROM friendlist WHERE owner=me() AND type = "user_created" 
AND uid IS NOT NULL 
+0

Où l'utilisez-vous, dans le graphe social v2.0? Je dois le faire dans la fenêtre de l'explorateur graphique. Des idées? – marciokoko

Questions connexes