FQL-запрос для выбора друзей, которые ходят в тот же колледж - PullRequest
1 голос
/ 24 июня 2011

Итак, у меня есть базовый FQL-запрос, который тянет всех друзей пользователя:

$fql = "SELECT name FROM user WHERE uid IN (SELECT uid1 FROM friend WHERE uid2=me())";

Мне нужно иметь возможность сузить количество возвращаемых пользователей в зависимости от их школы. Я знаю, что вы можете сделать запрос, как это:

$fql = "SELECT name FROM user WHERE sex='male' AND uid IN (SELECT uid1 FROM friend WHERE uid2=me())";

И это вернут только друзей-мужчин. В любом случае можно добавить еще один пункт, например:

AND WHERE sex='male'

за исключением ГДЕ идентификатор школы в их информации равен некоторому другому идентификатору. Я попросил пользователей предоставить мне разрешение friends_education_history, чтобы это стало проблемой. То, что я пытаюсь сделать, это вытащить только друзей из определенного университета и показать их.

Я также знаю, что информация об образовании - это массив. Это выглядит так:

( [id] => 103767646329157 [name] => Savannah Country Day School ) [year] => Array ( [id] => 137616982934053 [name] => 2006 ) [type] => High School ) [1] => Array ( [school] => Array ( [id] => 110256772337516 [name] => American University Center of Provence ) [type] => College ) [2] => Array ( [school] => Array ( [id] => 12527153330 [name] => University of Virginia ) [year] => Array ( [id] => 142963519060927 [name] => 2010 ) [concentration] => Array ( [0] => Array ( [id] => 154992221223448 [name] => English ) ) [type] => College ) ) )

Могу ли я получить информацию, где type = College?

Заранее спасибо

1 Ответ

4 голосов
/ 19 июля 2011

ВЫБЕРИТЕ имя ОТ пользователя, ГДЕ ВХОД uid (ВЫБЕРИТЕ uid1 ОТ ДРУГОГО ГДЕ, где uid2 = me ()) И ЮТА В СОТРУДНИЧЕСТВАХ

Это подтянет всех друзей, которые находятся в сети «Юта» (University of Utah).

...