Facebook fql 如何使用第一个查询中的用户ID在查询中创建FQL查询?

Facebook fql 如何使用第一个查询中的用户ID在查询中创建FQL查询?,facebook-fql,fql.multiquery,Facebook Fql,Fql.multiquery,我有一个FQL查询,该查询返回对帖子发表评论的人的列表:- 从注释中选择时间、fromid、likes、post_id_cursor,其中post_id='331288023558058_592220760798115'按时间描述限制5000排序 我想做的是在此查询中包含另一个查询,以返回留言人的更多详细信息 选择性别、名字、中间名、姓氏、用户名、区域设置、配置文件url、带有用户标识的图片,其中uid={fromid of person leaving comment} 是否可以合并查询,以便

我有一个FQL查询,该查询返回对帖子发表评论的人的列表:-

从注释中选择时间、fromid、likes、post_id_cursor,其中post_id='331288023558058_592220760798115'按时间描述限制5000排序

我想做的是在此查询中包含另一个查询,以返回留言人的更多详细信息

选择性别、名字、中间名、姓氏、用户名、区域设置、配置文件url、带有用户标识的图片,其中uid={fromid of person leaving comment}

是否可以合并查询,以便在单个查询中获取所有数据?你知道怎么做吗

谢谢


乔纳森

你可以在这里找到你的答案:

您希望使用多重查询将这两个查询连接起来。希望有帮助。

使用多重查询

commentquery=从注释中选择时间、fromid、likes、post_id\u光标,其中post_id='33128802358058_592220760798115'按时间顺序描述限制5000

userquery=从用户处选择性别、名字、中间名、姓氏、用户名、区域设置、配置文件url、带有用户徽标的图片,其中uid=从commentquery中选择fromid

要使用多个FQL查询,需要在数组中对查询进行json_编码。对于/fql?q=参数

因此,请具体说明:

$queries = [];
$queries['comments'] = "SELECT time, fromid... ";
$queries['users'] = "SELECT sex, ... WHERE uid IN (SELECT fromid FROM #comments)";

$fql = json_encode($queries);
// then using curl or whatever 
// (multiqueries don't work with PHP sdk's $facebook->api() i believe)
GET http://graph.facebook.com/fql?q=$fql
使用多重查询

graph.facebook.com/fql?q={query1:SELECT time,fromid,likes,post_id\u cursor from comment where post_id='331288023558058_592220760798115'按时间顺序描述限制5000,query2:SELECT sex性别,first_name,middle_name,last_name,username,locale,profile_url,pic_square_带有用户标识,其中uid在query1中选择fromid}


感谢您的回答,我如何对查询进行json_编码,我正在使用PHP。如果你能帮我把这一切整理好,那就太好了。感谢这就是我目前所拥有的$query=urlencode选择时间,fromid,likes,post_id_cursor from comment,其中post_id='331288023558058_592220760798115'按时间顺序描述限制5000$url=$baseurl.$query.$access\u令牌$结果=curl\u load$url$commentids=json_decode$result;我的例子是基于PHP的。因此,最简单的方法是将这两个查询放在一个关联数组中,然后在该数组中进行json_编码。您得到的URL最终应该是这样的:https://graph.facebook.com/fql?q={注释:选择+时间,…,用户:选择+性,…}&access_-token=aaaaaaaaaaaaa。。。因此,可能需要对整个json字符串进行urlencode。并记住将其添加到q参数中