2009-12-05 35 views
0

我想寫一個Facebook查詢,將返回用戶發佈給他的朋友的所有評論,Facebook Comments Count

但是我似乎無法找到正確的模式。它好像沒有可建立索引的字段。

有什麼建議嗎?

與感謝,

Wineshtain

回答

0

的流意見的間接路徑會是這樣的

select * from comments where fromid = <my_id> and object_id in (
    select post_id from stream where sourceid in (
     select uid1 from friend where uid2 = <my_id>)) 

的照片,與

SELECT pid FROM photo WHERE aid IN (SELECT aid FROM album WHERE owner IN (... 

替代中間查詢不幸的是,安全設置,可以限制查詢你的朋友牆上的帖子和照片。

+0

使用此方法遇到的問題是返回結果數量的限制。由於我們正在獲取朋友列表及其帖子,因此在「達到」實際上對任何內容進行了實際評論的帖子之前,其結果要返回至極限。所以返回的結果始終爲0.(除非用戶對所有內容或最新帖子發表評論,否則99%的時間爲零)。無論如何解決這個問題? –

+1

您的目標是「由用戶發佈的所有評論」是不可能的,因爲根據一些非發佈標準(日期?大小?活動?)截斷了流。數據不存在。 爲了超越結果限制,您需要縮小搜索範圍並執行多個查詢。 我建議一次緩存好友ID並走N ids。 我也建議限制的職位返回 - 1)actor_id = (使用限制,以防止溢出 最後由朋友創建後) 2)CREATED_TIME>過去一週(最近發表的文章) 3),你可能需要調查多查詢 – Stevko

+0

謝謝! 偉大的建議! –

0

我不相信你可以以直接的方式爲你描述完成這項工作。 FQL表通常只在有限的條件下編制索引(出於性能方面的原因,我敢肯定)。在Comments FQL Table的情況下,您只能通過帖子ID或xid選擇評論。

不幸的是,這意味着你必須知道用戶評論過的對象,然後才能獲得評論。您必須事先選擇您希望獲得評論的所有帖子,照片等,然後才能找回它們。

+0

感謝您的回覆! 有關如何間接做到這一點的任何提示?如何收集這些帖子/照片? –

+0

我不確定是否有辦法。我從來沒有做過這樣的事情,所以我可能會先閱讀API文檔和其他對象(帖子,照片等)的FQL表,並查看它們是如何編制索引以及如何獲得一些他們。 – zombat