FQL NOT IN像<>等效运营,EXCEPT!=(FQL NOT IN Equiva

2019-09-17 03:28发布

我想开发这个代码:

$users = $facebook->api(array(
  'method' => 'fql.query',
  'query' =>    "SELECT uid, last_name, pic_big"
             + " FROM user WHERE uid IN ("
             + "     SELECT uid" 
             + "     FROM page_fan"
             + "     WHERE page_id='411133928921438'" 
             + "         AND uid IN ("
             + "             SELECT uid2 FROM friend WHERE uid1 = me()"
             + "         )"
             + ")"
));

这个想法是,我不想IN但不想使用操作员,但FQL不支持运营商不一样,不同的...我怎样才能与FQL办呢?...

Answer 1:

没有NOT IN操作符在FQL。 你可以做一个简单的选择使用IN和使用PHP否定。 这是一个小的开销,但据我所知,这是唯一的方法。

我发现了一个相关的帖子: 请点这里 。



Answer 2:

Facebook并没有支持。 你只需把它包起来足够括号。

例如,要找到主治谁不是当前用户或朋友问心无愧当前用户的事件用户:

SELECT uid, name FROM user WHERE uid IN (
  SELECT uid FROM event_member WHERE eid=209798352393506
)
AND NOT (uid=me())
AND NOT (uid IN (
  SELECT uid1 FROM friend WHERE uid2=me()
))


Answer 3:

刚刚发现一个方式做NOT IN ,不得不分享这个好消息;)

SELECT post_id, actor_id, message FROM stream WHERE source_id in(a, b, c) and NOT (actor_id in (a, b, c))

这将不属于自己的网页,又名球迷用户或网页获得由未知用户多页的信息,即所有的帖子。



文章来源: FQL NOT IN Equivalent operator like <> , EXCEPT, !=