在ArangoDB中,AQL(ArangoDB Query Language)是一种用于查询和操作图数据的语言。要在AQL中使用嵌套查询,可以使用FOR
子句和IN
关键字。以下是一个嵌套查询的示例:
假设我们有两个集合:users
和posts
。users
集合包含用户信息,posts
集合包含帖子信息。每个帖子都有一个authorId
字段,表示帖子的作者。我们希望查询所有用户及其相关的帖子。
FOR user IN users
FOR post IN posts
FILTER post.authorId == user._key
RETURN { user: user, post: post }
在这个查询中,我们首先使用FOR user IN users
遍历users
集合中的所有用户。然后,我们使用另一个FOR post IN posts
遍历posts
集合中的所有帖子。接下来,我们使用FILTER
子句过滤出那些authorId
字段与当前用户键匹配的帖子。最后,我们使用RETURN
子句返回一个包含用户和帖子信息的对象。