2013-04-04 18 views
0

我想在頁面上獲得前10名喜歡的職位。我的查詢是:facebook:fql從流的順序中選擇喜歡count desc

select message,likes from stream where 
source_id=<pageid> and is_published=1 
limit 10 

這是返回的數據結構:

"message": "message", 
    "likes": { 
    "href": "https://www.facebook.com/browse/likes/?id=<id>", 
    "count": <likecount>, <- THIS IS THE FIELD I WANNA ORDER BY 
    "sample": [ 
    ], 
    "friends": [ 
    ], 
    "user_likes": false, 
    "can_like": true 

如何使用ORDER BY子句由喜歡訂購:計算領域?

回答

2

您只需要在WHERE部分之後和LIMIT部分查詢之後添加ORDER BY likes.count

對於stream表,您可能需要調整LIMIT以獲得所需的結果,然後截斷腳本中返回的結果。流表在設計上有一些嚴重的侷限性:

  • 如果您允許他人對您的網頁上的帖子,一些用戶將不得不配置他們的隱私設置,以便他們的職位未被API返回。 Facebook的過濾掉這些它完成評估FQL,所以這是罕見的,你真正能拿到10個職位回來時,你要求10

  • Facebook的限制的歷史它在stream表搜索量。我發現如果您想查看1個月以上的帖子,您需要的LIMIT至少爲100個。我一直很難用stream表格檢索超過3個月的帖子。

+0

dot!這就是我一直在尋找的!感謝有關流表的其他信息。 – 2013-04-04 13:31:19