2012-01-16 5 views
1

は、私は次のコードを使用してこれを行うことができます -FQLを使用して検索するすべてのタグが写真に含まれている写真を見つける最良の方法は何ですか?私は2人が写真のどこにいる写真を検索するFQLを使用したい場合は

$のtag_list変数は、ユーザIDのカンマ区切りリストです
$fql_query_url = 'https://graph.facebook.com/' . '/fql?q=SELECT+src_big+FROM+photo+WHERE+pid+IN(SELECT+pid+FROM+photo_tag+WHERE+subject+IN('.$tag_list.'))' . '&access_token=' . $params['access_token']; 

これは、いずれかのユーザーが写真にタグ付けされている写真を返します。

しかし、写真の中に人の両方が表示されている(タグが付けられている)写真を探したい場合はどうすればいいですか?これを行う良い方法はありますか?写真で大勢の人を探したい場合はどうしたらいいですか?結果を返すと、結果を繰り返し処理し、すべてのユーザーが写真に収まっていることを確認するだけですか?

他の誰かがこれに取り組んでいますか? 多くのありがとう

答えて

1
fql?q= 
SELECT src_big 
    FROM photo 
WHERE pid IN (SELECT pid FROM photo_tag WHERE subject ='{uid1}') 
    AND pid IN (SELECT pid FROM photo_tag WHERE subject ='{uid2}') 
+0

ありがとうございます。ありがとうございます。私のコードはPHPで書かれていますので、FQLクエリを探して構築するためにユーザーIDの数をループする関数を作成するだけで、 "AND pid IN(SELECT pid ..." INの代わりにIN(1,2,3)のいずれかが見つかると、すべてのIDが存在する場所(1,2,3)の結果のみを返す単一のクエリを使用するよりエレガントな方法です。答えは – undefined

+0

ですが、AND pid IN行を繰り返し追加していますが、ある時点で長さの問題に遭遇します。しかし、最初の質問には2人のユーザーが特に言いました。少なくとも私にその信用を与えて答えを受け入れる – DMCS

+0

私のオリジナルの質問は、(2以上の)大きなグループを見つける方法の問題を提起しました。あなたの答えはもう一度ありがとう。 – undefined

関連する問題