2011-07-13 3 views
1

j'ai écrit la requête FQL suivante qui devrait fonctionner, mais il semble à l'échec:FQL requête de table checkin jette une erreur d'analyse

SELECT coords, tagged_uids, page_id FROM checkin 
WHERE author_uid = IN (SELECT uid2 FROM friend WHERE uid1 = me()) 

Il renvoie une erreur comme suit:

Parser error: unexpected 'IN' at position 68.

Does not de sens quand d'autres requêtes de fin de travail de syntaxe similaire comme celui-ci:

SELECT uid, name, pic_square FROM user 
WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 

Quelqu'un sait une meilleure façon d'obtenir le chèque -ins de mes amis?

Répondre

0

IN doit remplacer l'opérateur =, et vous en avez seulement besoin. Essayez:

SELECT coords, tagged_uids, page_id FROM checkin 
WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 

Aussi, assurez-vous que vous avez la permission friends_checkins prolongée.

+0

Merci. On dirait que ça pourrait marcher pour moi! Dommage que je ne puisse pas filtrer par page_id ... une fois que j'ajoute cela à la requête, il y a une exception. – Eric

+0

C'est bizarre, parce que 'page_id' est indexable aussi. Qu'est-ce que vous essayez d'interroger avec ça? –