任务:从User
集合中获取随机好友建议。
这是一个用户集合示例:
{
"firstname": "John",
"lastname": "Doe",
"username": "johndoe",
"email": "john@doe.com"
}
我还有一个边缘集合friendRequest
,可存储这样的朋友请求:
_from: "User/John" -> _to: "User/Jane"
问题:我想过滤掉自己和我已经发送过请求的用户。
这是我的初步查询,让3个用户排除我自己
FOR user IN User
FILTER user._key != 'myself'
SORT RAND()
LIMIT 3
RETURN user
我希望能够排除我已经发送使用FILTER NOT IN (<<SOME EDGE QUERY>>)
注意:我还有一个与friendRequest_graph
个收藏品之间的friendRequest
边缘相关的图表User
答案 0 :(得分:1)
我发现我可以用这个查询来做到这一点!
FOR user IN User
FILTER user._key != 'myself' &&
user._key NOT IN (FOR fr IN friendRequest FILTER fr._from == 'User/myself' RETURN LTRIM(fr._to, 'User/'))
SORT RAND()
LIMIT 3
RETURN user