我使用Spring Data DSL通过以下方式查询MongoDB:
Page<Member> findByCommunitiesCodeContaining(String code, Pageable pageable);
它返回具有给定代码的社区的所有成员。
问题:我需要传递一组社区代码,并从列出的代码中返回至少参与一个社区的成员(社区的交集不为空)。
我浏览了Spring Data Mongo文档,但是找不到支持这种情况的DSL。
问题:如何查询具有集合集合的记录?
更多详细信息。这是我的结构在Java方面的外观。
@Document
public class Member {
@Id
private String id;
private List<Community> communities;
}
社区:
public class Community {
private String region;
private String code;
}
答案 0 :(得分:0)
一种选择可能是使用正则表达式
Page<Member> findByCommunitiesCodeRegex(String code, Pageable pageable);
代码应为正则表达式,例如:
String code = (code1|code2|code3|....)
希望它有帮助,我没有尝试过,但是值得尝试。