如何将 AQL 的所有结果合并到具有自定义属性的单个文档中

2024-02-11

我有一个 AQL 查询遍历图,它始终应从一组唯一的集合中返回固定数量的文档。 因此每个集合只会发生一次并且仅包含一个文档。

我希望将它们全部合并到反映文档集合名称的属性下的单个文档中。

查询很简单:

FOR v IN ANY "vertex/key" edge_collection RETURN v

返回示例结果为:

[
  {
    "_key": "123",
    "_id": "foo/123",
    "_rev": "_WYhh0ji---",
    "foo_attribute": "lorem impsum"
  },
  {
    "_key": "456",
    "_id": "bar/456",
    "_rev": "_WYhh2ny---",
    "bar_attribute": "dolor sit amet"
  }
]

我希望得到这样的:

[
  {
    "foo": {
      "_key": "123",
      "_id": "foo/123",
      "_rev": "_WYhh0ji---",
      "foo_attribute": "lorem impsum"
    },
    "bar": {
      "_key": "456",
      "_id": "calendar/bar",
      "_rev": "_WYhh2ny---",
      "bar_attribute": "dolor sit amet"
    }
  }
]

  • 为了从文档使用中获取集合名称PARSE_IDENTIFIER function https://docs.arangodb.com/3.3/AQL/Functions/Document.html#parseidentifier分别给出文档的集合名称和密钥
  • Use 方括号 https://docs.arangodb.com/3.0/AQL/Fundamentals/DataTypes.html#objects--documents动态生成文档属性的理解
  • 简单地合并查询结果

Example:

RETURN MERGE(
    FOR v IN ANY "vertex/key" edge_collection
    RETURN {[PARSE_IDENTIFIER(v).collection]: v}
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 AQL 的所有结果合并到具有自定义属性的单个文档中 的相关文章

  • 关于 ArangoDB 中多个索引的使用

    具有以下结构的文档 path String enabled Long disabled null Long other fields 我想通过路径前缀和某些数字与文档时间戳之间的数字关系的组合来查找文档 伪代码 SELECT e FROM
  • ArangoDB:如何获取2个顶点之间的所有可能路径?

    如何在 maxDepth 2 的情况下获取 2 个顶点 例如 X 和 Y 之间的所有可能路径 我尝试过TRAVERSAL但执行需要大约 10 秒 这是查询 FOR p IN TRAVERSAL locations connections X
  • 在 ArangoDB 中使用相同边定义的多个图

    我正在评估 ArangoDB 并尝试创建多个可能包含相同节点集合和相同边集合的图 即使每个图可能包含不同的物理文档和边 然而 当尝试创建一个使用已在另一个图中使用的边集合的图时 我得到 1921 边缘集合已在边缘定义中使用 error 当图
  • 顶点和边的模型架构

    如何像 OrientDB 中那样验证图 顶点和边 数据 例如 如果我的图有格式的顶点 边 name any name age 13 如何将它与定义良好的模式 带有验证 相关联 在OrientDB中 还具有将数据存储在顶点和边中的功能 并且每
  • AQL 查询返回 Promise

    我一直在尝试使用肥皂消息从 Arangodb 获取查询结果到我的前端服务 Angular 4 我能够获得查询结果 但在 console log 中打印出来 但是我怎样才能在这个函数 myService 下得到它呢 换句话说 如何将查询结果输
  • 使用正则表达式提取由分隔符分隔的文本的某些部分

    我有一个示例输入文件 如下所示 其中包含 ID 名称 开始日期 结束日期 年龄 描述和位置列 220 John 23 11 2008 22 12 2008 28 Working as a professor in University Hy
  • ArangoDB 索引与边缘集合的使用

    任务 更新许多边属性的最快方法 出于性能原因 我忽略图形方法并直接使用集合进行过滤 ArangoDB 2 8b3 查询 报价 边集 FOR O In Offer FILTER O from from and O to to and O ex
  • docker容器中arangodb数据备份策略

    我想备份 arangodb 数据 以防 arangodb 在 docker 容器中运行 arangodb 的数据作为卷安装到主机系统 一种解决方案是创建一个 docker 映像 基于官方 arangodb 映像 其中包含用于备份的脚本阿兰戈
  • 使用 Spring Data ArangoDB 为每个客户提供单独的数据库的多租户

    到目前为止 我知道设置数据库名称以与 Spring Data ArangoDB 一起使用的唯一方法是将其硬编码在database 扩展时的方法AbstractArangoConfiguration 像这样 Configuration Ena
  • 如何解决 Arango 查询承诺错误? [复制]

    这个问题已经存在了 我一直在尝试使用肥皂消息从 Arangodb 获取查询结果到我的前端服务 Angular 4 我能够获得查询结果 但在 console log 中打印出来 但是我如何在这个功能 Service 下获取它 这样我就可以输入
  • ArangoDB 分面搜索性能

    我们正在评估 ArangoDB 在构面计算空间中的性能 还有许多其他产品能够通过特殊的 API 或查询语言执行相同的操作 马克逻辑方面 ElasticSearch 聚合 Solr 分面等 我们知道 Arango 中没有特殊的 API 来显式
  • 如何将 ArangoDB 嵌入桌面应用程序

    我想在我的应用程序中嵌入一个图形数据库 适用于 Windows Linux 和 MAC 我将搜索范围缩小到 ArangoDB 和 OrientDB 我能够让嵌入式 OrientDB 工作 但我仍然想尝试 ArangoDB 来做出明智的决定
  • 我的树形图的 Arangodb 自定义过滤器/访问者

    我有一个带有两个边定义的图 如下所示 isDepartment organisation gt organisation hasAccess user gt organisation 组织嵌套在树中 无循环 有多个顶级组织 没有任何传入is
  • 如何将 AQL 的所有结果合并到具有自定义属性的单个文档中

    我有一个 AQL 查询遍历图 它始终应从一组唯一的集合中返回固定数量的文档 因此每个集合只会发生一次并且仅包含一个文档 我希望将它们全部合并到反映文档集合名称的属性下的单个文档中 查询很简单 FOR v IN ANY vertex key
  • ArangoDB 和用户定义的函数或存储过程

    ArangoDB 文档 Foxx 部分 说 由于 Foxx 直接在 ArangoDB 内部运行 因此您可以将处理请求所需的所有数据库查询和逻辑捆绑在一个位置 除了使用 Foxx 框架 之外 还有其他 更原生 的方法来实现与 ArangoDB
  • 转储数据库并以新名称重新导入

    如果我需要使用 MySQL 将数据库 foo 的内容复制到第二个数据库 bar 中 我通常会这样做 mysqldump u root foo gt foo sql mysql u root e CREATE DATABASE bar mys
  • 如何在aerospike中获取ttl为-1的记录集?

    我在aerospike中有很多记录 我想获取ttl为 1的记录 请提供解决方案 只是为了澄清 设置TTL 为 1 https github com aerospike aerospike client go blob master docs
  • 检索 arangodb 中没有链接边的顶点

    检索相关edge collection中没有边的所有顶点的最佳方法是什么 我尝试使用以下代码 但自 arangodb 2 8 以来 它变得非常慢 在以前的版本中并不是很快 但比现在快了大约 10 倍 对于大约 1000 个边和大约 3000
  • 如何使用 ArangoJs 将文档存储在 ArangoDb 图中?

    我正在使用 Nodejs 应用程序中的最新版本的 ArangoDb 和 ArangoJs 我有以下两个顶点 users tokens tokens顶点包含向其中一个用户发出的安全令牌users顶点 我有一个名为的边缘定义token belo
  • ArangoDB 游标超时

    使用 ArangoDB 2 3 1 看来我的光标将在几分钟内过期 我希望它们能持续一个小时 我已使用 TTL 参数设置 AQL 查询对象 如下所示 query removed actual query count true batchSiz

随机推荐