FQL:选择朋友的照片

时间:2012-12-12 20:05:01

标签: facebook facebook-fql fql.multiquery

此FQL尝试为我的朋友提取照片

[1]

{"query1":"SELECT owner, object_id, src_big FROM photo
WHERE owner IN (SELECT uid2 FROM friend WHERE uid1=me())"}
思考了几秒后,

提供了这个错误响应...

{"error_code":1,"error_msg":"An unknown error occurred"}

但是这个为我的朋友提取专辑的查询将会起作用,并返回一个专辑信息的JSON对象

[2]

{"query1":"SELECT aid, owner, name FROM album
WHERE owner IN (SELECT uid2 FROM friend WHERE uid1=me())"}

为什么[2]有效但不是[1]?

2 个答案:

答案 0 :(得分:0)

确实,这很奇怪。但是这个可以做你想要的:

SELECT owner, object_id, src_big 
FROM photo WHERE aid IN (
     SELECT aid FROM album WHERE owner in (
          SELECT uid2 FROM friend WHERE uid1=me()
     )
)

享受分页乐趣!

答案 1 :(得分:0)

查询[1]返回所有照片对象,而查询[2]返回相册对象。大多数时候照片的数量远远大于相册的数量。因此,如果每个朋友有10张专辑,每张专辑有100张照片,则查询大小会增加,而且由于FQL不使用任何形式的分页,您可以同时提取所有内容。

考虑将来使用多个查询或使用LIMITS

批处理