0

これは今のところ不可能のようです..これを行うことができる適切なクエリまたは一連のクエリを誰かに教えてもらえますか? 基本的に、すべての友達のチェックインが必要です: 自分でチェックインしたもの、写真でチェックしたもの、友達ではないユーザーがタグ付けしたもの.

私の最初の試みはこれでした:

SELECT checkin_id, author_uid, page_id, coords, tagged_uids, timestamp FROM checkin WHERE (author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) OR author_uid=me()) ORDER BY timestamp DESC LIMIT 50

ただし、これには写真付きのチェックインは含まれません。

私の2回目の試みはこれでした:

SELECT id, author_uid, app_id, timestamp, tagged_uids, page_id, page_type, coords, type FROM location_post WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1=me())

しかし、WHERE 句が示すように、友人によって作成されたチェックインのみを検索し、友人がタグ付けされたチェックインは検索しません。

私の次の試みはこれでした:

SELECT id, author_uid, app_id, timestamp, tagged_uids, page_id, page_type, coords, type FROM location_post WHERE tagged_uids IN (SELECT uid2 FROM friend WHERE uid1=me())

しかし、おそらく当然のことながら、空のデータセットを返すだけです。

友人ごとに 1 つずつ、500 の奇妙なクエリを送信するよりも短いので、これを行う方法はありますか?

どんなポインタでも大歓迎です!

ありがとう、
テジャ

4

3 に答える 3

1

次の FQL を使用して、友達のチェックインと、友達がタグ付けされているチェックインを取得することもできます。

SELECT checkin_id FROM checkin WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) OR tagged_uids IN (SELECT uid2 FROM friend WHERE uid1 = me())
于 2013-03-28T07:31:59.887 に答える
0

これはFQLにある必要がありますか、それともGraph APIでは不十分ですか?

/me/friends?fields=checkins、非常に遅いですが(警告:多くの友達がいると、これは完全にタイムアウトする可能性があります)、最近のチェックイン(およびそれらのチェックインのいいね、コメントなど)の配列を含む友達のリストを返します

パフォーマンスを向上させるために、友達のバッチに分割することもできます。

/?fields=checkins&ids=[CSV LIST OF FRIENDS TO CHECK]

于 2012-10-15T17:08:41.017 に答える
0

私は最近、同じ問題を解決しようとしていましたが、 /me/friends?fields=checkins 経由でグラフを使用すると、遅すぎて使用できず、完全にタイムアウトすることもありました。

たまたま検索機能を見つけたのですが、これは私 (そしておそらくあなた) が望んでいることを正確に実行しているようです。

Facebookのドキュメントを引用するには:

チェックイン: https://graph.facebook.com/search?type=checkin (このリクエストは、あなたまたはあなたの友人の最新のチェックイン、またはあなたまたはあなたの友人がタグ付けされたチェックインを返します。現在、aq= パラメータは受け入れません。)

検索の下には、さらに多くの例があります: https://developers.facebook.com/docs/reference/api/

于 2012-11-12T02:57:09.163 に答える