当前位置: 首页 > 知识库问答 >
问题:

使用Morphia同时查询父项和子项

丁豪
2023-03-14

假设我们有两个对象:

class Server {
    ...
    String location;
    List<Status> statusList;
    ...
}

class Status {
    ...
    int code;
    ...
}

如何获得相同位置的所有服务器的状态列表。例如如果code==1place=="Beijing"

如果我想使用createQuery(Server.class),然后。filter(),则无法输出状态列表!

共有2个答案

慕河
2023-03-14

Morphia不支持像那样返回不同的类型。它将返回创建查询时指定的类型。您可以通过创建带有Status的查询和Server的集合并仅投影Status字段来伪造它。不过,您需要禁用验证。

燕和裕
2023-03-14

下面的不应该为这个工作吗?

List<Server> oops = createQuery(Server.class).find("location","Beijing").find("statusList.code", 1).asList();
 类似资料:
  • 您可以看到,子查询中没有使用协议实体路径a1的别名,而是被协议实体路径A2的别名所取代。在querydsl中还需要做一些其他的事情才能生成这个查询吗?

  • 我有如下sql查询: 结果是按类别分组的用户收入-显示为数组。 我想添加subquery-get这些收入,而不是分组的,这样用户就可以在array中展开字段并详细地看到它。 谢谢你的帮助

  • 为了查询子集合和父文档,我对firest的文档及其最佳实践有一些问题。我试图使用Typecript在我的Firebase函数中进行查询。 DB: ├── 用户(集合) │ └── 用户(ID为的文档) │ │ └── 计划(子集合) 我有一个数组中的用户ID列表,我需要从用户文档和当前文档的子集合计划中收集信息。 但是如何从用户文档和子集合(计划)文档(当前)中获取数据,我不知道在场景中最有效的查

  • 我有一个这样的结构` ...等等,在

  • 关于子查询使用 利用子查询进行过滤 列出够物品RGAN01的所有客户。 检索包含物品RGAN01的所有订单编号。 检索具有前一步骤列出的订单编号所有客户ID。 检索前一步骤返回的所有客户ID的客户信息。 mysql> SELECT order_num -> FROM OrderItems -> WHERE prod_id = 'RGAN01'; +-----------+ | or

  • 问题内容: 我有一些文档在嵌套对象中具有嵌套对象: 在这里,主文档有几个嵌套对象(标签),每个标签有几个嵌套对象(事件)。 我想获得的所有地方类型的事件文件 transfer_processed 类型的标签后发生60000毫秒 转移 。为此,我需要同时查询 tag.at , tags.type , tags.events.at 和 tags.events.type 。而且我不知道怎么做:我只设法对