2012-02-03 4 views
2

나는 내 자신의 타임 라인에 벽에 게시물을 검색하려면이 FQL 쿼리를 실행하고있어 검색 다음에 대한페이스 북 사용자의 타임 라인

https://graph.facebook.com/fql?q=SELECT+message+FROM+stream+WHERE+source_id=me()%20AND+strpos(message, '메탈리카') +> 0 access_token은 = XXXX

& (죄송합니다 링크, 멋지게 보이지 않았다)

문자열 "metallica"가 포함 된 모든 상태 업데이트를 반환하지 않겠습니까? 내가 뭔가 잘못하고 있는거야? 이전 게시물 (1-2 세)은 반환되지 않습니다. 이유는 다음과 같습니다.

스트림 테이블의 각 쿼리는 이전 30 일 또는 50 개의 게시물 중에서 더 빠른 날짜로 제한됩니다. 그러나 FQL 연산자와 함께 created_time과 같은 시간별 필드를 사용할 수 있습니다 (예 : < 또는>)를 사용하여 더 많은 범위의 게시물을 검색 할 수 있습니다.

+0

사람들이 제한하는 유일한 이유는 사람들이 가지고있는 것보다 더 나은 검색을하지 않기 때문입니다. 그것과 그것은 많은 프로세싱과 대역폭을 먹을 것입니다. – Ray

답변

2

나는 (http://developers.facebook.com/blog/post/478/)

말은 예를 들어 내가 쿼리 페이스 북의 쿼리가 작동하는 방법에 대한 블로그 기사를 읽고 SELECT post_id, message FROM stream WHERE source_id=me() AND comments.count > 50 LIMIT 10

  1. 초기에게 스트림 항목 가져 오기는 지정한 LIMIT뿐만 아니라 색인 된 필드 (설명서 페이지의 별표로 표시)를 사용하여 가져올 수있는 항목을 기준으로하여 10 개로 제한됩니다. 가장 최근의 스트림 항목임을 기억하십시오.
  2. 그런 다음 추가 부분은 10 개로 필터링되므로 50 개 이상의 의견이 포함 된 10 개 게시물 중 1 개만 게재 되었다면 1 개의 결과를 다시 얻게됩니다. 그거 끔찍하지, 그렇지?

나는 최대 제한이 5000이라고 생각하므로 메탈리카 게시물을 얻는 것이 가장 좋습니다. 그러나 그렇더라도 그래프 API는 얼마나 멀리 뒤로 가는지 제한적으로 보인다. 어떤 사람들은 보았을뿐 2010 년으로 돌아가는 게시물이 있다는 것을 알았습니다. 2009 년 4 월을 지나면 얻을 수 없습니다. 아마도 다른 사람들보다 게시물 수가 적을 것이고 API가 얼마나 될지를 기준으로 게시물 기반이 될 수도 있습니다. 저장.

+2

제한 제안을 주셔서 감사합니다. 제한을 5000으로 설정하고 있으며 2010 년 7 월까지 사용할 수 있습니다. 내가 원하는대로 오래되지는 않았지만, 내가 추측하는 것보다 낫다. – Slethron

관련 문제