Facebook fql.query Синтаксис - PullRequest
0 голосов
/ 08 мая 2011

Я пытаюсь правильно понять синтаксис fql.query от Facebook. Контекст для этого запроса - получить всех общих друзей между двумя пользователями. Используя пример "user1 = dusty24" и "user2 = april1991", какими будут значения для следующих переменных?

  • UID1
  • UID2
  • source_uid
  • target_uid

Довольно безопасно предположить, что 'uid1 = dusty24' и 'uid2 = april1991', но какого черта это значения для 'source_uid' и 'target_uid'?

FB.api(
{
    method: 'fql.query',
    query: 'SELECT uid1 FROM friend WHERE uid1 IN (SELECT uid2 FROM friend WHERE uid1=source_uid) AND uid2=target_uid'
},
    function(response) {
        console.log(response);
    }
}

1 Ответ

1 голос
/ 08 мая 2011

Я быстро прочитал документацию , в которой говорится, что uid1 - это идентификатор первого пользователя пары, а uid2 - второй пользователь пары. Это поля из таблицы. Вы не меняете их в запросе. В результате вы получите source_uid и target_uid, которые будут идентификаторами каждого из этих людей.

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

SELECT uid1 FROM friend 
WHERE uid1 IN 
( SELECT uid2 FROM friend WHERE uid1={*dusty24 uid*} ) 
AND uid2={*april1991 uid*}
...