2014-01-23 5 views
0

Мне нравится сортировать фотографии, количество сообщений в столбце и количество моих друзей.Получайте количество мест, в которых мои друзья

SELECT name ,likes_count, wall_count FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 

Это возвращение мне список всех моих друзей имен с их общей страницей любит количества и стены после подсчета , но я также необходимо рассчитывать места всех друзей. Я думаю, что facebook обеспечивает его прямо как нравится и настенный пост. Как и в профиле, мы можем видеть, что подсчет сумм подсчитывается точно так же, как подсчет голосов и друзей, а также общий подсчет друзей. Я тоже пробовал это.

SELECT author_uid, 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()) LIMIT 5000 

Моя идея состояла в том, что я буду получать его и обработать его на моем конце приложения, но не возвращает полный список возвраты. Как я могу получить все проверки моих друзей с их идентификаторами, чтобы я мог рассчитать их общие проверки? ИЛИ если есть прямой способ подсчета количества мест, то это будет очень эффективно для моего кода ...

ответ

0

Не используйте LIMIT.

SELECT author_uid, 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()) 

Это работает и дает мне 737 проверок для всех моих друзей. FQL не имеет функции COUNT, как в SQL, поэтому вам придется перечислить проверки на выбранном вами языке.

+0

это возвращает мне только список из 153 проверок, но я знаю, что у меня гораздо больше, чем – Yawar

+0

Я думаю, что это действительно возвращает весь список. Вы уверены, что не входите в * checkin * with * сообщение с прикрепленным местоположением *? Прочтите предупреждение [здесь] (https://developers.facebook.com/docs/reference/api/checkin). Поэтому убедитесь, что вы знаете, что вы подразумеваете под Checkin. –

Смежные вопросы