在我的案例中,我需要在其他数据中检索一个人在2012年的Facebook帐户中所做的所有股票。
我发现可以通过名为“stream”的FQL表访问共享,选择stream.type = 80.同时使用“created_time”和source_id上的where子句应该可以解决问题:
SELECT post_id,message,likes,attachment
FROM stream
WHERE source_id = me()
AND created_time > 1325397600
AND type=80
ORDER BY likes.count desc
事实是......当查询流表时,facebook的引擎似乎需要一个限制。如果你不提供一个,没有结果。我想这是因为如果没有设置限制,响应时间可能很长......不管怎样,我确信他们有很多原因。所以:
SELECT post_id,message,likes,attachment
FROM stream
WHERE source_id = me()
AND created_time > 1325397600
AND type=80
ORDER BY likes.count desc
LIMIT 100
但是:这个限制参数似乎是在之前我的一些where子句中应用的,与SQL语句之类的SQL语句不同,它意味着fb对我做了什么示例查询是顺序的:
随时随地从流中获取100个元素,任何类型(可以是状态,分享,照片,地点,朋友的墙上的帖子等)。实际上,我的source_id子句似乎是在limit之前应用的。
然后按类型80和created_time过滤,但不确定如何
在我的情况下,我需要2012年的所有股票,但我永远不能确定设置为2000或5000的任意限制将在应用过滤器之前捕获所有2012年的流元素。
也许还有另一种方式?
非常感谢你的帮助。