我寻找名称中有模式的 facebook 用户(任何用户,不仅仅是我的朋友或特定用户的朋友),如下所示:
SELECT first_name,uid FROM user WHERE contains('pete')
这将返回一个名字包含“pete”(即“peter”)的人的数组。这个数字相当高,所以结果当然会被截断。我想在这个集合中(在服务器端截断之前)抓住与我有最多共同朋友(或具有任意用户 ID)的人。然而,发出
SELECT first_name,uid FROM user WHERE contains('pete') AND mutual_friend_count > 1
给出和空集(并且没有错误)。我认为服务器在应用后一个选择之前会截断,因为在正常 SQL 中会发生,出于性能原因(或我在文档中遗漏的明确限制)。
我通过尝试检索用户 ID 的朋友的所有朋友来进行第二次尝试,然后选择名称。但是,不允许检索朋友的朋友(这在技术上很困难,因为有些朋友隐藏了他们的朋友列表,这会破坏查询)。
我看不出有其他方法可以实现我的目标……有吗?(我的意思是:给定一个用户 ID,搜索拥有最多共同好友的用户)。