2012-12-12 2 views
3

이 FQL 내 친구 사진을 가져 오기 위해 시도FQL : 선택 친구의 사진을

[1]

{"query1":"SELECT owner, object_id, src_big FROM photo 
WHERE owner IN (SELECT uid2 FROM friend WHERE uid1=me())"} 

가 몇 초 동안 생각 후이 오류 응답을 제공

...

{"error_code":1,"error_msg":"An unknown error occurred"} 

하지만 친구들을위한 앨범을 가져 오는이 쿼리는 작동하여 앨범 정보의 JSON 객체를 반환합니다.

[2]

[2]가 작동하지만 [1]이 아닌 이유는 무엇입니까?

답변

0

실제로, 이상합니다. 하지만이 사람은 당신이 원하는대로합니다 :

SELECT owner, object_id, src_big 
FROM photo WHERE aid IN (
    SELECT aid FROM album WHERE owner in (
      SELECT uid2 FROM friend WHERE uid1=me() 
    ) 
) 

페이지 매김을 즐기십시오!

+0

2 서브 쿼리 작동하지만 1 개 서브 쿼리하지 않는 이유와 앞으로 또는 배치에 다중 쿼리를 사용하는 것이 좋습니다? –

0

쿼리 [1]은 모든 사진 개체를 반환하고 쿼리 [2]은 앨범 개체를 반환합니다. 대부분의 경우 사진 수가 앨범 수보다 훨씬 많습니다. 따라서 각 친구가 100 장의 사진이 포함 된 10 개의 앨범이있는 경우 쿼리 크기가 늘어나고 FQL은 어떤 형식의 페이지 매김도 사용하지 않으므로 한 번에 모두 가져옵니다.

한계

관련 문제