W jakiś sposób jestem zdezorientowany tym, jak działa Facebook FQL. Muszę uzyskać "fana miesiąca" określonej strony. To jest użytkownik, który zrobił najwięcej postów i komentarzy.Ograniczenia zakresu FQL dla strumienia i komentarzy
W facebook FQL stream documentation mówi:
Każde zapytanie tabeli strumień jest ograniczony do 30 dni poprzedzających lub 50 stanowisk, która jest większa, jednak można użyć raz specyficzne dziedzinach takich jak created_time wraz z operatorami FQL (takimi jak < lub>) , aby pobrać znacznie większy zakres wpisów.
I to właśnie robię. Dostaję stanowisk w pewnym zakresie w następujący sposób:
SELECT actor_id,created_time FROM stream WHERE source_id = '.$wallid.' AND (created_time >= '.$date_start.' OR updated_time >= '.$date_start.')'
to wydaje się działać - w jakiś sposób - ale mam problemy z komentarzami. Nie chcę otrzymywać wszystkich komentarzy do konkretnego wpisu, ale wszystkie komentarze w określonym przedziale czasowym.
SELECT fromid, time FROM comment WHERE post_id IN (SELECT post_id FROM stream WHERE source_id = '.$wallid.')
To spowoduje powrót około 50 komentarzy. Gdy dodaję:
AND time > 1309478400 // 2011-07-01
Dostaję również komentarze. Ale z następującymi (2011-07-01 - 2011-07-02) wrócę pustą tablicę:
AND time > 1309478400 AND time < 1309564800
Kiedy nie dodawać warunków czasowych, wydaje się, że mogłem wrócić więcej niż 50 komentarzy, uruchamiając kilka zapytań z rosnącym ograniczeniem:
... LIMIT 0, 50
... LIMIT 50, 50
Jednak ograniczenia te nie będą działać poprawnie w moich warunkach czasowych.
Czy ktoś już zrobił coś podobnego lub czy ktoś może wyjaśnić, w jakich okolicznościach te ograniczenia działają, a kiedy nie?