Количество комментариев на Facebook
-
13-09-2019 - |
Вопрос
Я пытаюсь написать запрос Facebook, который вернет все комментарии, опубликованные пользователем его друзьям,
однако, похоже, я не могу найти правильную схему.Это как если бы не было "индексируемых" полей для создания этого.
Пожалуйста, есть какие-нибудь предложения?
С благодарностью,
Контейнер для вина
Решение
Косвенный путь для комментариев потока был бы чем-то вроде
select * from comments where fromid = <my_id> and object_id in (
select post_id from stream where sourceid in (
select uid1 from friend where uid2 = <my_id> ) )
для фотографий замените средний запрос на
SELECT pid FROM photo WHERE aid IN ( SELECT aid FROM album WHERE owner IN ( ...
К сожалению, настройки безопасности могут ограничить доступ к сообщениям на стене ваших друзей и фотографиям.
Другие советы
Я не верю, что вы можете сделать это прямым способом, как вы описываете.Таблицы FQL обычно индексируются только по ограниченным критериям (я уверен, по соображениям производительности).В случае с Комментарии к таблице FQL, вы можете выбирать комментарии только по идентификатору записи или xid.
К сожалению, это означает, что вы должны знать объекты, которые прокомментировал пользователь, прежде чем сможете получить комментарии к ним.Вы должны были бы предварительно выбрать все посты, фотографии и т.д.к которым вы хотели получить комментарии, прежде чем сможете их восстановить.