FQL - получение pid фотографий, на которых отмечен пользователь, дает разные результаты при разных запросах - PullRequest
7 голосов
/ 05 января 2012

Я пытаюсь получить фотографии, на которых отмечен пользователь. Я использую запрос:

SELECT pid 
FROM photo 
WHERE pid 
IN (SELECT pid FROM photo_tag WHERE subject=me())

Количество результатов, которые я получаю, равно 32. Однако при выполнении этого запроса:

SELECT pid FROM photo_tag WHERE subject=me()

Количество результатов, которые я получаю, равно 67. Это число, которое я ожидаю, потому что я отмечен на 67 рисунках, а не только на 32. Что я делаю не так с запросом?

Ответы [ 3 ]

1 голос
/ 07 декабря 2012

таблица photo_tag содержит фотографии, на которых вы отмечены, таблица фотографий содержит загруженную вами фотографию

В вашей ситуации вы отмечены 67 фотографиями, и 32 из 67 фотографий загружены вами, остальные загружены кем-то другим (и вы отмечены тегом).

1 голос
/ 05 января 2012

Возможно, вы отмечены на фотографиях, которые недоступны при использовании текущего access_token. Возьмите один из идентификаторов фотографий из большего списка, которого вы не видите в меньшем списке, и попробуйте получить к нему доступ с помощью этого access_token.

0 голосов
/ 06 января 2012

У меня такая же проблема. Владение фотографией, похоже, не является проблемой. Я могу видеть некоторые pids (во внешнем запросе), которые принадлежат моим друзьям.

Я запускаю внутренний запрос, чтобы получить все pids, в которых я являюсь «субъектом». Когда я пытаюсь получить детали (pid, object_id, subject и т. Д.) Для некоторых из этих pids, я получаю пустую строку. Я не думаю, что это проблема разрешения. У меня включены оба параметра "user_photos" и "friend_photos", и я использую правильный токен доступа.

Я пытался исследовать, что отличало эти несколько упрямых фотографий. Некоторые общие темы: 1) загружено с мобильного устройства 2) Поделиться с "Custom" списком друзей

Но я пока не смог получить причину.

...