0

简单的说。我需要帮助构建一个 FQL 多查询请求,该请求将执行以下操作:

  1. 然后从登录用户的好友列表中获取 UID,
  2. 使用这些 ID 获取过去两周的所有评论和消息(来自流)
  3. 最后,使用用户名加入这些结果

这是我到目前为止的查询:

[1] GRAB_UID

SELECT uid2 FROM friend WHERE uid1 = me()

[2] GRAB_STREAM(缺少 2 周部分,可能完全错误):

SELECT type, created_time, post_id, comments, actor_id, target_id, message 
FROM stream 
WHERE filter_key IN 
       (SELECT filter_key FROM stream_filter WHERE uid = me()) 
AND actor_id IN 
       (SELECT uid2 FROM friend WHERE uid1 = me())
)';

[3] GRAB_USRNAMES

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

我真的可以使用大师来提出这些请求,我非常感谢您的帮助。

4

1 回答 1

4
{
    "query1":"SELECT uid2 FROM friend WHERE uid1 = me()",
    "query2":"SELECT type, created_time, post_id, comments, actor_id, target_id, message FROM stream WHERE filter_key IN (SELECT filter_key FROM stream_filter WHERE uid = me()) AND actor_id IN (SELECT uid2 FROM #query1)",
    "query3":"SELECT uid, name, username, pic_square, current_location, profile_url FROM user WHERE uid IN (SELECT uid2 FROM #query1)"
}

您还可以在以下位置查看 Graph API Explorer 的结果:

https://developers.facebook.com/tools/explorer?fql={%22query1%22%3A%22SELECT%20uid2%20FROM%20friend%20WHERE%20uid1%20%3D%20me%28%29%22%2C%22query2%22%3A%22SELECT%20type%2C%20created_time%2C%20post_id%2C%20comments%2C%20actor_id%2C%20target_id%2C%20message%20FROM%20stream%20WHERE%20filter_key%20IN%20%28SELECT%20filter_key%20FROM%20stream_filter%20WHERE%20uid%20%3D%20me%28%29%29%20AND%20actor_id%20IN%20%28SELECT%20uid2%20FROM%20%23query1%29%22%2C%22query3%22%3A%22SELECT%20uid%2C%20name%2C%20username%2C%20pic_square%2C%20current_location%2C%20profile_url%20FROM%20user%20WHERE%20uid%20IN%20%28SELECT%20uid2%20FROM%20%23query1%29%22}

于 2012-11-05T09:15:01.223 回答