RavenDB RQL 来检索相关文档

问题描述

我使用的是 RavendB 5.1

我有一个父文档

{
   "ddt": "1313","operator": "Dadas","insertAt": "01/02/2021 12:15:47","code": "R2021.001","clientId": "cbaa9024-abf8-4575-8f44-c06bbb3d8a2e","@Metadata": {
      "@collection": "repairOrders"
   }
}

和另一个集合中的其他文档

{
   "name": "AZM2E","piva": "31137418148","@Metadata": {
      "@collection": "clients"
   }
}

使用 RQL,我需要一个查询

{
   "ddt": "1313","client": {
       "name": "AZM2E",}
   "@Metadata": {
      "@collection": "repairOrders"
   }
}

我需要通过 REST API 执行查询

解决方法

您可以将 clients 集合中的文档存储为相关文档 repairOrders 集合中的文档。

请参阅创建相关文档演示中的示例和演练
https://demo.ravendb.net/demos/csharp/related-documents/create-related-documents

然后就可以查询集合repairOrders

  1. 在查询中包含相关文档

  2. 选择/投影查询结果中的相关文档信息

  3. 查看查询示例演示中的示例和演练
    https://demo.ravendb.net/demos/csharp/queries/query-example#step-6

要将 includeRQL 一起使用,请参阅: https://ravendb.net/docs/article-page/5.1/csharp/indexes/querying/what-is-rql#include