Проблемы с Facebook fql.query - PullRequest
0 голосов
/ 05 марта 2011

У меня есть некоторые проблемы с этим методом fql.query:

select music 
  from user 
  where uid = ...... 
    and music in (select music 
                    from user
                    where uid = ......
                 )

Я хочу получить общий музыкальный интерес между двумя пользователями; он работает с такими запросами

select uid 
  from user
  where uid = ......
    and uid in (select uid 
                  from user
                  where uid = ......
               )

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

( Извините за плохой английский! Я из Испании ;))

Ответы [ 2 ]

0 голосов
/ 05 марта 2011

Я попробовал это:

select music 
  from user 
  where uid=UID1
AND music IN (SELECT music from user where uid=UID2)

И это прекрасно работает, когда строка UID1 music точно совпадает со строкой UID2.

0 голосов
/ 05 марта 2011

Разве первый запрос уже не дает вам ответ?

Я имею в виду, что он делает следующее:

-- Display only music field
select music 
from user 
where uid = <first_USER> -- Selection of your first user 
and music in ( -- We want to macth the string with another
    select music -- Selects only the music field
    from user
    where uid = <second_USER> -- Selection of your second user
)

Таким образом, вы получаете название музыки, которое совпадает в двух записях пользователя.

Ваш второй запрос кажется мне немного странным:

select uid
  from user
  where uid = <first_USER?>
    and uid in (select uid 
                  from user
                  where uid = <second_USER?>
               )

В основном это означает, что для user_id найдено соответствие user one и user two.Этого никогда не происходит, так как у каждого пользователя есть свой UID.

Кстати, я не знаю, как Facebook обрабатывает музыкальную строку, но может показаться, что пользователь не пишет свое любимое музыкальное имя вобщее написание и / или формат.Это может помешать вашей системе соответствия.

...