You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Spring Data Cosmos DB嵌套参数查询及嵌套字段att4检索实现方法

Azure Spring Data Cosmos DB 嵌套字段查询实现方案

完全可以针对嵌套字段att4执行检索操作,Azure Spring Data Cosmos DB提供了3种常用的可直接落地的实现方式,具体如下:

  • 方式1:使用派生查询方法(最便捷)
    只需要在对应的Repository接口中按照嵌套字段层级定义查询方法即可,字段名之间用下划线连接即可映射嵌套结构。示例代码:
    // 假设你的实体类名为Item,att3对应嵌套对象类型为SubItem
    List<Item> findByAtt3_Att4(String att4Value);
    
    调用该方法时传入要检索的att4值,即可直接返回所有匹配的文档。
  • 方式2:使用@Query注解自定义SQL
    如果查询逻辑更复杂,可以直接写Cosmos DB的原生查询语句,嵌套字段直接用点符号访问即可。示例代码:
    @Query(value = "SELECT * FROM c WHERE c.att3.att4 = @att4Val")
    List<Item> queryByNestedAtt4(@Param("att4Val") String att4Value);
    
  • 方式3:使用Criteria API动态构建查询
    适合查询条件需要动态拼接的场景,同样支持嵌套字段的路径拼接。示例代码:
    Criteria criteria = Criteria.where("att3.att4").is(targetAtt4Value);
    Query query = new Query(criteria);
    List<Item> items = cosmosTemplate.find(query, Item.class, "你的容器名");
    

注意:如果嵌套字段对应的是数组结构,查询方式需要调整为使用ARRAY_CONTAINS等函数,本场景下att3是对象类型,直接用路径访问即可。

内容的提问来源于stack exchange,提问作者Aniket Paul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 17:45:02